Eclipse plugin EclipseRCP:是否可以在不重新绘制的情况下向上移动字段?
在我的编辑器中,我有一个复合控件,它在顶部包含一个标签控件,每当用户在下面的任何字段中输入错误输入时,它都会以红色闪烁信息消息。文本会根据用户的输入动态变化。我能够实现在错误输入时显示红色文本,而在正确输入时标签中不显示任何内容的效果 但是,我希望当标签组合中没有显示错误时,下面的其余字段将在显示中上移。当有错误要显示时,错误应该出现在它的位置(在所有其他字段的顶部),向下推其他字段 有没有一种方法可以在不重新绘制所有控件的情况下实现此效果?是,在父控件上调用Eclipse plugin EclipseRCP:是否可以在不重新绘制的情况下向上移动字段?,eclipse-plugin,eclipse-rcp,Eclipse Plugin,Eclipse Rcp,在我的编辑器中,我有一个复合控件,它在顶部包含一个标签控件,每当用户在下面的任何字段中输入错误输入时,它都会以红色闪烁信息消息。文本会根据用户的输入动态变化。我能够实现在错误输入时显示红色文本,而在正确输入时标签中不显示任何内容的效果 但是,我希望当标签组合中没有显示错误时,下面的其余字段将在显示中上移。当有错误要显示时,错误应该出现在它的位置(在所有其他字段的顶部),向下推其他字段 有没有一种方法可以在不重新绘制所有控件的情况下实现此效果?是,在父控件上调用layout(true) 例如,我有
layout(true)
例如,我有一个视图,它的顶部有一个搜索栏,可以切换谁的可见性。我有一个创建搜索组合的方法和一个删除它的方法:
private void createNameSearchBar () {
mySearchControl = new CardSearchControl (myViewComposite, SWT.NONE);
mySearchControl.setSearchListener (this);
}
private void disposeNameSearchBar () {
mySearchControl.dispose ();
mySearchControl = null;
}
private CardSearchControl mySearchControl = null;
private Composite myViewComposite;
private boolean mySearchBarState;
要隐藏或显示搜索栏控件,我调用此方法(myViewComposite是拥有搜索栏和所有其他控件的顶级控件):
public void setSearchBarState (boolean show) {
mySearchBarState = show;
if (myViewComposite == null || myViewComposite.isDisposed ())
return; // no work to do
if (mySearchBarState && mySearchControl == null) {
createNameSearchBar ();
mySearchControl.moveAbove (null);
myViewComposite.layout (true);
} else if (!mySearchBarState && mySearchControl != null) {
disposeNameSearchBar ();
myViewComposite.layout (true);
}
}