JFace-Dialog:如何查询用户输入

时间:2012-02-03 13:36:00

标签: java dialog widget eclipse-rcp jface

我正在使用org.eclipse.ui.forms.FormDialog派生类来查询我的RCP-Application用户的输入。这是一个模态对话框,在用户单击OK按钮后关闭。 我已经为Text-widgets创建了成员变量,并在用户单击OK-Button之后尝试使用getText()获取用户的输入(因此关闭了对话框)。

不幸的是,当对话框关闭时,窗口小部件被释放(因此,单击OK按钮),并且无法再在Text-Widgets上调用getText()。

我想知道别人如何解决这个用例?

2 个答案:

答案 0 :(得分:2)

只需在代码中扩展Dialog.okPressed()即可在对话框关闭之前检索当前值...

答案 1 :(得分:1)

使用数据模型,例如简单的Pojos存储用户输入。此模型通过Eclipse Databinding绑定到您的Ui,例如到文本字段,并在每次用户修改文本字段的值时同步。看一下如何在应用程序中集成数据绑定的教程,请参阅http://www.vogella.de/articles/EclipseDataBinding/article.html