2016-12-28 12 views
0

Я пытаюсь сделать таблицу с флажками. Мне уже предоставлен ContributionManager. Менеджер имеет для каждой флажки IAction, поэтому я надеюсь, что каким-то образом я могу повторно использовать действия для своей таблицы.Флажки в таблице от IActions в ContributionManager

Я хотел бы надеяться на что-то вроде

TableItem п = новый TableItem (таблица, SWT.Selection);

item.setAction (oneAction);

Но я не могу найти ничего подобного.

Я работаю в правильном направлении или у кого-нибудь есть какие-либо советы для меня?

ответ

1

Флажки в таблицах не имеют отношения к действиям и менеджерам по взносам.

Если вы используете Table вы можете указать SWT.CHECK как часть стиля таблицы:

Table table = new Table(parent, SWT.CHECK | ... other styles); 

Используйте addSelectionListener добавить прослушиватель для события выбора. В случае событий проверки событие detail установлено на SWT.CHECK.

Или, если вы используете программу просмотра JFace, вы можете использовать CheckboxTableViewer. Используйте addCheckStateListener для прослушивания событий состояния проверки.

+0

Я не знаю, что делают все события. Я изменяю программу, где IAPS предоставляются для IToolBarManager. Я хочу переместить действия из панели инструментов в таблицу. – Jacob

+1

Вы не можете. Таблицы не поддерживают действия. Вам нужно будет использовать слушателей, чтобы определить, какая строка была проверена, и вызвать метод запуска «run». –