Java JDialog输入建议

Java JDialog输入建议,java,input,jdialog,Java,Input,Jdialog,我需要一些关于JDialog的建议 我需要捕捉“输入”数据,我想知道,最好的方法是什么。 好的,这是一个完整的问题。当用户单击按钮(位于JFrame上)时,JDialog弹出,有3个文本字段用于输入和一个组合框。在用户按下ok之后,我需要在JFrame中返回这些数据。嗯,我可以在路上做这个,但那太多的意大利面代码:)我应该使用什么样的侦听器?如果你愿意给我一个代码示例,我会很感激:)嗯,有很多方法可以解决这个问题,也许你可以尝试一种委托方法,使用如下界面: public interface Di

我需要一些关于JDialog的建议

我需要捕捉“输入”数据,我想知道,最好的方法是什么。
好的,这是一个完整的问题。当用户单击按钮(位于JFrame上)时,JDialog弹出,有3个文本字段用于输入和一个组合框。在用户按下ok之后,我需要在JFrame中返回这些数据。嗯,我可以在路上做这个,但那太多的意大利面代码:)我应该使用什么样的侦听器?如果你愿意给我一个代码示例,我会很感激:)

嗯,有很多方法可以解决这个问题,也许你可以尝试一种委托方法,使用如下界面:

public interface DialogListener {
    public boolean okClicked(String input1, String input2, String input3, String combo);
    public void cancelClicked();
}
(布尔值表示您是否决定关闭对话框)

如果使用MVC方法,请在框架或框架控制器中实现该功能,并将该组件添加为自定义对话框的侦听器

另一种方法是在对话框上设置属性,然后框架或控制器可以查询对话框中的输入值

这取决于你希望事物的通用性

你也可以有这样的东西,更通用,更可重用,但不太方便:

public interface DialogListener {
    public boolean okClicked(JDialog dialog, Map<String, JComponent> components);
    public void cancelClicked();
}
公共接口对话框侦听器{
公共布尔值(JDialog对话框,映射组件);
公共作废取消点击();
}

您阅读了吗?是的,但我不能为此目的使用JOptionPane。请看这里:。