Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java setRowHeight(int)可以使用JXTable,但setRowHeight(int,int)不能使用_Java_Swing_Jtable_Swingx_Jxtable - Fatal编程技术网

Java setRowHeight(int)可以使用JXTable,但setRowHeight(int,int)不能使用

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

我在更新JXTable的行高度时遇到问题。我已经测试了本文()中的一个示例:

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();
            }
        });
    }
}