4

ElementListSelectionDialogを使用しようとしています。サンプルコードに従いましたが、何らかの理由でダイアログが表示されますが、オプションはありません

私のコード:

ElementListSelectionDialog dialog = 
      new ElementListSelectionDialog(shlSpriteCreator, new LabelProvider());
dialog.setMultipleSelection(false);
dialog.setIgnoreCase(true);
dialog.setAllowDuplicates(true);
dialog.setMessage("Select an AI");
dialog.setTitle("What AI to use?");
dialog.setElements(new String[]{"HELLO","GOODBYE"});
if (dialog.open() == Window.OK) {
    aiControllerLocation = (String) dialog.getFirstResult();
}

結果のダイアログ:

選択するオプションがないダイアログ

私はもともとクラスの配列を使用していましたが、機能しないため、単純な文字列のリストを代用しましたが、LabelProviderクラスを使用して理解したように、任意のオブジェクトを使用できるはずであり、それは toString() 表現によって表示されます.

4

1 に答える 1

2

このタイプのダイアログは、Workbench UI で正常に機能します。このダイアログを正しく実行するには、サンプル コードを使用する必要があります。

ElementListSelectionDialog dialog = 
    new ElementListSelectionDialog(PlatformUI.getWorkbench().getDisplay().getActiveShell(), new LabelProvider());
于 2012-08-27T13:11:21.387 に答える