2015-06-03 6 views
0

Env: Java SE 6Как использовать флажок tri-state/TreeItem в Java?

Я работаю над приложением Eclipse RCP. Как создать TreeItems с флажком tri-state. Как и интерфейс пакета обновления Eclipse IDE. Теперь я использую класс SWT TreeItem, который предоставляет API, setChecked (bool), для истинно/ложных состояний.

enter image description here

+0

Еще один вопрос, где может быть установлен установленный код? Я посмотрел на InstallWizard.class, SelectableIUsPage.class, CheckboxTableViewer.class, но ничего не нашел. Мое намерение состояло в том, чтобы выяснить, как они обрабатывают частичный выбор и обновляют родительский узел с помощью setGrayed. – Stan

ответ

3

Заполненный флажок известен как 'неактивна'.

С CheckboxTreeViewer используйте setGrayed, setGrayChecked, setGrayedElements методы для установки серых элементов.

С использованием TreeItem используйте метод setGrayed.

Это зависит от вас, чтобы закодировать логику определения того, когда узел должен быть серого.

+0

@ grep-449, имеет ли среда Swing API API для обработки флажка tri-state? Или мне нужно будет пересечь узлы-братья и setGrayed для родительского узла самостоятельно? Кажется, что там должно быть что-то, что заботится об этой задаче. – Stan

+0

Это SWT не Swing. Eclipse не использует Swing. –

+0

Хорошо, я ошибся. Но вопрос один и тот же - мне нужно делать сантехнические работы, чтобы проверить isAllSiblingsChecked, а затем setParentGrayed сам? – Stan