Java setRowHeight(int)可以使用JXTable,但setRowHeight(int,int)不能使用
我在更新JXTable的行高度时遇到问题。我已经测试了本文()中的一个示例:Java setRowHeight(int)可以使用JXTable,但setRowHeight(int,int)不能使用,java,swing,jtable,swingx,jxtable,Java,Swing,Jtable,Swingx,Jxtable,我在更新JXTable的行高度时遇到问题。我已经测试了本文()中的一个示例: import javax.swing.*; 导入javax.swing.table.DefaultTableModel; 公共类可降级{ 私有静态void createAndShowGUI(){ JFrame=新JFrame(“可降级”); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); DefaultTableModel=新的DefaultTableMode
import javax.swing.*;
导入javax.swing.table.DefaultTableModel;
公共类可降级{
私有静态void createAndShowGUI(){
JFrame=新JFrame(“可降级”);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
DefaultTableModel=新的DefaultTableModel();
model.setColumnIdentifiers(新对象[]){
“第1栏”、“第2栏”、“第3栏”});
JTable table=新的JTable(模型);
对于(int count=0;count<3;count++){
insertRow(count,新对象[]{count,“name”,“age”});
}
表1.setRowHeight(1,30);
frame.add(新的JScrollPane(表));
frame.setLocationByPlatform(真);
frame.pack();
frame.setVisible(true);
}
公共静态void main(字符串参数[]){
SwingUtilities.invokeLater(新的Runnable(){
公开募捐{
createAndShowGUI();
}
});
}
}
这个演示非常好用,但是如果我将JTable更改为JXTable(我的项目需要它),第二行就不会更新,大小都是15。如果我在JXTable中使用setRowHeight(30)而不是setRowHeight(1,30),它可以工作,但所有行都会更新
这是虫子吗?我怎样才能解决这个问题?
我正在使用库swingx-0.9.2.jar
谢谢对我来说很好,Java 8,Windows 7,Swing-X-1.6.4。。。似乎你真的想更新:p就是这样。但是,旧版本中的一些类在新版本中不再可用,如SortOrder、SortKey、Filter、FilterPipeline等。。。我不得不重新调整代码,但这是最好的解决方案。谢谢
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
public class DemoTable {
private static void createAndShowGUI() {
JFrame frame = new JFrame("DemoTable");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
DefaultTableModel model = new DefaultTableModel();
model.setColumnIdentifiers(new Object[] {
"Column 1", "Column 2", "Column 3" });
JTable table = new JTable(model);
for (int count = 0; count < 3; count++){
model.insertRow(count, new Object[] { count, "name", "age"});
}
table.setRowHeight(1, 30);
frame.add(new JScrollPane(table));
frame.setLocationByPlatform(true);
frame.pack();
frame.setVisible(true);
}
public static void main(String args[]) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});
}
}