【发布时间】:2014-11-28 19:59:11
【问题描述】:
我正在尝试为预算计划制作一个动态条目列表。 最初应该在这个列表中有 10 个项目,我想 为用户提供添加更多项目并使面板可滚动的选项。 每个项目都是一个包含 1 个标签和 1 个文本框的面板。
我的问题是我将主面板的布局设置为网格,并且我已将列数设置为 2,将行数设置为 0,当向此面板添加第 11 个项目时,它会创建一个新行,这很好,但在向此面板添加内容时,面板的“视图”会变宽。
我想让面板的“视图”保持相同的大小,并且能够向下滚动以查看其其他内容。
这是我的代码:
private void AddButtonActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
javax.swing.JPanel newCategoryPanel = new javax.swing.JPanel();
javax.swing.JLabel newLabel = new javax.swing.JLabel();
javax.swing.JTextField newTextField = new javax.swing.JTextField();
newCategoryPanel.setLayout(new java.awt.GridLayout(1, 2));
newLabel.setText("Poop :)"); //for testing
newCategoryPanel.add(newLabel);
newTextField.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
}
});
newCategoryPanel.add(newTextField);
panel1.add(newCategoryPanel);
panel1.revalidate();
}
【问题讨论】:
-
把JPanel放到一个JScrollPane里面,设置JPanel的布局为
GridLayout(0, 2)。 -
1.考虑使用
JTable。 2. 考虑编辑你以前的old question 而不是新建一个。
标签: java swing list user-interface jpanel