【发布时间】:2013-10-20 13:56:26
【问题描述】:
final JPanel gui = new JPanel(new BorderLayout(2,3));
JPanel guiCenter = new JPanel(new BorderLayout(2,3));
JPanel buttonConstrsint = new JPanel(new FlowLayout(FlowLayout.CENTER));
JButton getQuotesButton = new JButton("Get Quotes..");
getQuotesButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JTable table = new JTable(generateRandomTableModel());
JScrollPane pane = new JScrollPane(table);
guiCenter.add(pane, BorderLayout.SOUTH);
//guiCenter.setVisible(true);
gui.add(guiCenter,BorderLayout.CENTER);
gui.setPreferredSize(new Dimension(400,400));
gui.revalidate();
gui.repaint();
}
});
buttonConstrsint.add(getQuotesButton);
guiCenter.add(buttonConstrsint,BorderLayout.NORTH);
// gui.add(labelFields,BorderLayout.NORTH);
gui.add(guiCenter,BorderLayout.CENTER);
JOptionPane.showMessageDialog(null, gui);
谁能帮助我为什么我的 gui 面板无法调整大小,当我加载表格时,我希望它会自动展开。
【问题讨论】:
-
再次,请努力创建和发布sscce,这是一个我们可以编译、运行、修改并希望能帮助您纠正的小程序。
-
这里真的需要一个 JOptionPane,为什么不只是一个对话框?
-
@user905374,为什么要使用 JDialog?然后您需要编写所有侦听器来处理“确定”、“关闭”按钮等。JOptionPane 在一个语句中为您完成所有这些。
-
@camickr 好的,我习惯了 JDialogs,我只使用 JOptionPane 进行快速提示。我不知道它可以这样使用。
-
您真的打算将
pane(JScrollPane)添加到guiCenter的BorderLayout.SOUTH 位置吗? BorderLayout 边缘(而不是中心)中的组件不会水平和垂直拉伸。
标签: java swing jpanel joptionpane preferredsize