0

テーブルビューアーを含むビューと、テキスト ウィジェットを含む別のビューがあります。テーブル ビューアーで何かを選択すると、選択したテキストがテキスト ウィジェットに表示され、そのテキストを編集できます。編集中にテキスト ウィジェットからのテキストでテーブル ビューアーを更新するにはどうすればよいですか?

4

1 に答える 1

0

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();
}

Alternatively, if you just want to update the table when the user is done changing the text, listen for SWT.FocusOut on the Text instead.

于 2013-05-24T08:01:36.590 に答える