[英]How to synchronize changes in Eclipse RCP?
我有一個帶tableviewer的視圖,另一個帶文本小部件的視圖。 當我在表查看器中選擇某些內容時,所選的文本將顯示在文本小部件中,並且我可以編輯該文本。 編輯時,如何使用文本小部件中的文本更新表查看器?
您只需要聽SWT.Verify
在Text
並相應地更新TableViewer
數據即可:
public static void main(String[] args)
{
final Display display = new Display();
Shell shell = new Shell(display);
shell.setLayout(new FillLayout());
shell.setText("StackOverflow");
final Text text = new Text(shell, SWT.BORDER);
text.addListener(SWT.Verify, new Listener()
{
@Override
public void handleEvent(Event e)
{
String oldString = text.getText();
String newString = oldString.substring(0, e.start) + e.text + oldString.substring(e.end);
/* SET STRING TO TABLEVIEWER DATA HERE */
System.out.println(newString);
}
});
shell.pack();
shell.open();
while (!shell.isDisposed())
{
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}
或者,如果你只是想在用戶完成更改文本更新表,偵聽SWT.FocusOut
上的Text
來代替。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.