我目前想为 JPanels 构建一个表格类型的布局。我发现有一个用于 Java 的 TableLayout,但我不知道如何导入它。另一方面,我发现有一个 GridBagLayOut,它也可以构造一个类似布局的表格。但它似乎更复杂。任何建议。
问问题
24441 次
1 回答
15
这是使用 TableLayout 的SSCCE,(TableLayout 简介)
import javax.swing.JButton;
import javax.swing.JFrame;
import layout.TableLayout;
public class TestTableLayout {
public static void main(String args[]) {
JFrame frame = new JFrame("Example of TableLayout");
frame.setSize(450, 450);
double size[][] = {{10, 75, 75, 75, 75, 75, 10}, // Columns
{10, 75, 75, 75, 75, 75, 10}}; // Rows
frame.setLayout(new TableLayout(size));
String label[] = {"(1,1)", "(1,5)", "(1,3)", "(5,3)", "(3,3)"};
JButton button[] = new JButton[label.length];
for (int i = 0; i < label.length; i++) {
button[i] = new JButton(label[i]);
}
frame.add(button[0], "1, 1");
frame.add(button[1], "1, 5");
frame.add(button[2], "1, 3");
frame.add(button[3], "5, 3");
frame.add(button[4], "3, 3");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
TableLayout 所需的 jar 可以从这里下载
另请查看:布局管理器的视觉指南,以防万一。
如果您选择 GridBagLayout,请查看:如何使用 GridBagLayout
于 2012-05-07T06:24:30.847 回答