3

我需要一些关于 JDialog 的建议。

我需要捕获“输入”数据,我想知道,最好的方法是什么。好的,这是完整的问题。当用户单击按钮(位于 JFrame 上)时,会弹出 JDialog,并且有 3 个文本字段用于条目和一个组合框。用户按下确定后,我需要在 JFrame 中返回这些数据。好吧,我可以在路上做到这一点,但是意大利面条代码太多了 :)) 我应该使用哪个监听器?如果您愿意给我代码示例,我将不胜感激:)

4

1 回答 1

1

嗯,有很多方法可以解决它,也许您可​​以尝试使用如下接口的委托方法:

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();
}
于 2012-04-27T17:27:56.637 回答