java - jtable 中不显示水平滚动条。如何让柱子停止收缩?

标签 java swing jtable jscrollpane

我正在向我的 JTable 添加一个 JScrollPane 以及 HORIZONTAL_SCROLLBAR_​​AS_NEEDEDVERTICAL_SCROLLBAR_​​AS_NEEDED
并设置JTable.AUTO_RESIZE_OFF。但是,当我添加一堆列时,列的名称无法正确显示,它们会缩小以适合表格。并且水平滚动条不显示。

这是代码和它的外观图片:

tableForDay1 = new JTable();
tableForDay1.setBounds(0, 619, 1337, -619);
tableForDay1.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
tableForDay1.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);

JScrollPane scrollBar1 = new JScrollPane (tableForDay1, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
scrollBar1.setVisible(true);
day1.setLayout(new BoxLayout(day1, BoxLayout.X_AXIS));
createColumns(tableForDay1);

这是我添加的列:(我将表作为参数传递)

private void createColumns(JTable table)
{
    //get table model
    DefaultTableModel tableModel = new DefaultTableModel();
    table.setModel(tableModel);
    tableModel.addColumn("אזור");
    tableModel.addColumn("מוביל");
    tableModel.addColumn("ת.ה");
    tableModel.addColumn("מ.ה");
    tableModel.addColumn("קוד מוצר");
    tableModel.addColumn("יישוב");
    tableModel.addColumn("שעת תאום");
    tableModel.addColumn("תוספות למוצר");
    tableModel.addColumn("כתובת");
    tableModel.addColumn("קומה");
    tableModel.addColumn("דירה");
    tableModel.addColumn("שם הלקוח");
    tableModel.addColumn("תאור מוצר");
    tableModel.addColumn("פלאפון");
    tableModel.addColumn("אישר קשר נוסף");
    tableModel.addColumn("פירוט מחיר");
    table.getTableHeader().setFont(new Font("Ariel", Font.BOLD, 27));

    String[]row = { "something", "something", "something", "something" , 
            "something" , "something" , "something" , "something", "something", 
            "something", "something" , "something" , "something" , "something" };

    tableModel.addRow(row);
}

这是图片:列名未正确显示,并且列未对齐

Names of the columns don't show properly , and columns not alligned

我该如何解决这个问题?

最佳答案

getColumnModel().getColumn(0).setPreferredWidth(*insert your width here*);

您必须对每个列执行此操作。

关于java - jtable 中不显示水平滚动条。如何让柱子停止收缩?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39892546/

相关文章:

java - 在启动预集成和后集成时分别运行单元测试和 IT 测试

java - 在Java中创建泛型类型的实例?

java - 如何设计一个也响应后端事件的 Java Swing 模型?

Java 在负坐标上绘制图像

java - 在 JTable 中显示 Emoji 字符

java - 动态将单元格可编辑属性设置为 JTable 行

java - LeetCode正则表达式问题中重叠子问题的可视化以及DP的使用

Java String parseFloat 或 double 表示 x.xxxxxx 数字?

java - 使用 java Swing 单击“下一步”按钮时图像不会显示在 JLabel 上

java - JTable 单元格编辑器更改类型