在我的eclipse rcp应用程序中,我使用一个向导,其中一个WizardPage使用TableViewer组件。 tableviewer中有2列,我为其中一列启用了EditingSupport
。我的要求是验证在可编辑列中输入的值,以便不应该是空格。此外,我只需在用户完成所有行的编辑后进行验证。我尝试了各种方法。但似乎都没有工作。
FocusListener
,在TableViewer上尝试SelectionChangedListener
)canFlipToNextPage()
覆盖方法,但这似乎没什么帮助。这种方法的问题是,即使在页面显示之前,平台也会调用canFlipToNextPage()
getNextPage
重写方法时,我得到与#2相同的结果有人能指出我这样做的正确方法吗?
答案 0 :(得分:0)
我看不出你怎么知道用户已经完成了所有行的编辑。
每次用户更改单元格时,我都会验证表格,并在验证调用中WizardPage.setPageComplete(boolean)
启用/禁用“下一步”和“完成”按钮。
答案 1 :(得分:0)
我会稍微偏离你的问题并给你一些适当的MVC提示。
isValid()
等API。setPageComplete(model.isValid());
。答案 2 :(得分:0)
如果您将列“实时”验证并将结果存储在 WizardPage#getNexPage()中使用的标志中以确定是否可以获取下一页或只是再次返回当前页面(此)以及验证结果的一些说明?