private float[] cwidth = { 0.1f, 0.3f, 0.3f, 0.2f, 0.1f };
setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
for (int i = 0; i < cwidth.length; i++) {
getColumnModel().getColumn(i).setPreferredWidth((int) (getPreferredScrollableViewportSize().width * cwidth[i]));
}
我有以下问题:
我有一个 5 列的 JTable。第一个是 3 位数字,第二个是字符串,然后是 JProgressBar,另一个字符串和一个按钮。
现在我希望它们的宽度取决于表格的大小。上面你可以看到我的实际尝试,但这不起作用。
我已经在网上搜索过,但我发现的一切都对我没有帮助,因为它总是关于将大小设置为非动态大小。
我希望你能帮助我。
谢谢您的帮助。我喜欢这一面!!
这是我的解决方案:
for (int i = 0; i < cwidth.length; i++) {
getColumnModel().getColumn(i).setPreferredWidth((int) (600 * cwidth[i]));
getColumnModel().getColumn(i).setMinWidth((int) (100 * cwidth[i]));
getColumnModel().getColumn(i).setMaxWidth((int) (1000 * cwidth[i]));
}