读完这篇文章link ,我想创建一个对话框,在其中可以选择复选框形式的多个项目。
ElementListSelectionDialog
不在对话框中显示任何元素。
final ElementListSelectionDialog dialog = new ElementListSelectionDialog(PlatformUI.getWorkbench().getDisplay().getActiveShell(), new LabelProvider());
dialog.setElements(new String[] { "1", "2", "3" });
dialog.setTitle("Numbers");
dialog.setMultipleSelection(true);
dialog.setInitialSelections(new String[] { "1", "2", "3" });
dialog.open();
使用上面的代码,我有时会得到对话框中的项目,但有两个问题:
- 我只是偶尔得到它们
- 它不是采用复选框的形式。
如果您知道更好的方法,请告诉我。 我真的很感谢任何帮助:)
最佳答案
ElementListSelectionDialog
不支持复选框选择。
您也许可以使用org.eclipse.ui.dialogs.ListSelectionDialog
:
String [] elements = ...
ListSelectionDialog dialog =
new ListSelectionDialog(shell, elements, ArrayContentProvider.getInstance(),
new LabelProvider(), "selection message");
dialog.setTitle("dialog title");
dialog.setInitialSelections(new Object []{....selections});
dialog.open();
Object [] result = dialog.getResult();
或者您始终可以使用 CheckboxTableViewer
编写自己的对话框。
关于java - 如何创建带有允许多项选择的复选框的对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25429448/