我在我的项目中添加了一个jDialog Swing Form,如下图所示:
现在我想在关闭这个JDialog时从jtextField获取值到父JFrame,我用Google搜索了它,我发现了这个:
Object obj=sasirMdp.showDialog();
但是编译器告诉我在我的JDialog中没有名为showDialog
的方法。
当我将此方法添加到JDialog类时:
ReturnValue showDialog() {
setVisible(true);
return result;
}
copmiler告诉我是否要创建班级ReturnValue
。
如果有人知道如何从JDialog
获得该值,我将非常感激。
答案 0 :(得分:2)
我觉得你在混淆JDialog和JOptionPane。你应该阅读How to Make Dialogs。这是对摆动对话的一个很好的介绍。
答案 1 :(得分:1)
你想要这样的东西吗?
public class TestJDialog extends JFrame implements ActionListener
{
private JLabel l;
public TestJDialog(String title)
{
super(title);
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
this.setLayout(new GridLayout(0,1));
JButton b = new JButton("Input Dialog");
b.addActionListener(this);
this.add(b);
l = new JLabel();
this.add(l);
setSize(300, 100);
setVisible(true);
}
public void actionPerformed(ActionEvent evt)
{
String s = evt.getActionCommand();
String input = JOptionPane.showInputDialog(this,
"Saisissez votre mot de passé:",
s,
JOptionPane.QUESTION_MESSAGE);
l.setText("Mot passé: " + input);
}
public static void main(String[] args)
{
new TestJDialog("Example");
}
}