3

org.eclipse.swt.widgets.Table にコンボ ボックス コントロールを作成します。コード スニペットは以下のとおりです。

...
TableEditor editor = new TableEditor (table_LLSimDataFileInfo);
CCombo combo = new CCombo (table_LLSimDataFileInfo, SWT.NONE);
combo.setText("CCombo");
combo.add("item 1");
combo.add("item 2");
editor.grabHorizontal = true;
editor.setEditor(combo, items[i], 0);
...

イベントをトリガーして、テーブル内の選択された行のコンボボックスリストを動的に変更するにはどうすればよいですか (たとえば、item1、item2 などが行 5 の item4、item5、item7 などに変更された場合のみ)。私の場合のイベントは、リストが変更されない別のコンボボックスでの選択です

4

2 に答える 2

2

2 番目の CCombo で更新を呼び出すには、他の CCombo でSelectionListenerを設定する必要があります。

このWavAudioSettingCompositeクラスは良い例です。

何かのようなもの:

public class ValueChanged extends SelectionAdapter {

    public void widgetSelected(SelectionEvent e) {
        if(e.getSource()==myFirstCCombo){
            // call update on your second CCombo
        }
    }
}

public void updateSecondCCombo(int[] newValues){
    int oldbitrate=getFramerate();
    mySecondCCombo.removeAll();

    for (int i = 0; i < newValues.length; i++) {
        mySecondCCombo.add(""+newValues[i]);
    }
}
于 2009-03-09T13:29:49.017 に答える
0

TableEditorドキュメントには、現在選択されている行を識別する選択リスナーを使用した簡単な例が示されています

この例をカスタマイズして、選択した行に応じて動的に入力するだけです。Combo

于 2009-03-09T13:24:05.257 に答える