我有一个JDialog,并希望该商店后关闭它确认文本框的数据......现在我已经没有问题,从存储箱中的数据,但之后关闭Swing对话框,进行的操作
操作后如何关闭此对话框?
似乎是一个简单的事情,但我还没有找到解决方案。
public class test extends JDialog {
private final JPanel contentPanel = new JPanel();
public test() {
setBounds(100, 100, 450, 300);
getContentPane().setLayout(new BorderLayout());
contentPanel.setLayout(new FlowLayout());
contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
getContentPane().add(contentPanel, BorderLayout.CENTER);
{
JPanel buttonPane = new JPanel();
buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
getContentPane().add(buttonPane, BorderLayout.SOUTH);
{
JButton okButton = new JButton("OK");
okButton.setActionCommand("OK");
buttonPane.add(okButton);
getRootPane().setDefaultButton(okButton);
okButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
try{
int x=Integer.parseInt(textField.getText());
saver.saveN(x);
}catch(Exception ecc){
JOptionPane.showMessageDialog(Test.this,"error");
}
}
});
}
}
}
}
很好的答案+1 – mKorbel 2012-04-07 20:02:52
我不能使用的Dispose()这个元素contentPanel.setVisible(假)上,如果我使用;隐藏对话框的所有内容,但窗口仍然打开...出了什么问题? – AndreaF 2012-04-07 20:28:57
@AndreaF你正在调用'contentPanel'上的方法,而不是'JDialog'。由于你的类从'JDialog'扩展,调用'this.dispose()'或'this.setVisible(false)'。 – Jeffrey 2012-04-07 20:33:03