Alb*_*Alb 4 java user-interface swt jface eclipse-rcp
我有一个ViewPart包含ScrolledForm从a创建的View类(extends )FormToolkit.当某些事件发生在应用程序的其他视图中时,我想在此视图中更改表单并让它实时更新给用户.
我现在添加了属性更改支持支持,并在视图中添加了以下方法
public void propertyChange(PropertyChangeEvent event) {
form.dispose();
toolkit.dispose();
createForm( event );
form.redraw();
}
Run Code Online (Sandbox Code Playgroud)
在哪里createForm( event )根据事件重新创建表单.
问题是UI在此之后不显示新表单.我知道表单创建正常,因为如果我拖动View和另一个视图之间的边框来调整它的大小,那么View会立即更新以显示新表单.如何以编程方式强制在UI中强制刷新视图?
你试过了form.reflow(true);吗?
这将重新计算表单的布局.
如果失败,请尝试调用 xxx.layout(true)'xxx'是SWT Composite的变量mame,它是表单实例的父变量.我假设表单是在方法中针对其父组合创建的createForm( event )?
| 归档时间: |
|
| 查看次数: |
4881 次 |
| 最近记录: |