如何在不创建单独对话框的情况下验证参数?

时间:2008-11-20 08:44:15

标签: java validation swing

我将创建一个使用树来显示数据结构(JTree)的应用程序(在Swing中)。树将位于窗口的左侧。用户将能够浏览树。每个树节点的参数将显示在窗口的右侧。 示例窗口将如下所示

===========================
| tree panel | data panel |
|            |            |
|            |            |
|            |            |
---------------------------

当用户想要更改该数据时,会出现问题。我该什么时候验证它们? 简单的方法是打开一个新的模态对话框(JDialog),让用户在其中更改这些数据。数据的验证将在“ok”按钮监听器方法中进行,但这有点笨重。我想允许用户在数据面板中编辑这些数据。在那种情况下,我应该何时验证它们?

Swing中是否有这种解决方案的模式?

或者任何在线教程怎么做?

提前致谢。

2 个答案:

答案 0 :(得分:1)

对话很糟糕。

立即立即丢弃任何完整的废话输入。例如,在数字字段中键入字母(使用文档过滤器)。不要发出哔哔声。不需要任何特定的提交步骤。您可能保留了部分输入的数据。

答案 1 :(得分:0)

我不完全确定你在追求什么,但是......

您可以将此“ok”按钮(或“提交更改”或其他内容)添加到数据面板,当按下该按钮时,如果更改有效,您将验证数据并保存更改?

(所以你在数据面板上有可编辑的组件)

编辑:如果这不好,你能否澄清一点:

  • 数据面板是否显示了树中某个项目的数据?
  • 哪些数据可以更改(并验证)

无论如何,如果你想直接验证对编辑组件所做的更改(例如JTextField),你可以使用例如