Как назначить TAction для кнопки панели инструментов во время выполнения?

Я добавляю кнопки панели инструментов динамически на основе файла настроек. Я хотел бы назначить TAction им. Пока что я добавил событие OnClick с обработчиком действия OnExecute, но если действие отключено, кнопка панели инструментов не отключается автоматически, как, например, TMenuItems, добавленный во время разработки.

Итак, другими словами, я хотел бы иметь версию времени разработки, назначающую TAction с помощью выпадающего меню "Действие" в IDE.

Вот что я сделал до сих пор (код на C++, но очевидно, что он делает).

TToolButton *b;
b = new TToolButton(ToolBar1);
b->Action = Form1->ActionManager1->Actions[0];
b->Parent = ToolBar1;

Это добавляет кнопку на панель инструментов, и она, кажется, следует за активным / отключенным действием, но при нажатии ничего не происходит. Как правильно и полностью добавить действие?

1 ответ

Решение

TToolButton опубликовал Action имущество. Просто назначьте желаемое TAction возражать против этого свойства.

Другие вопросы по тегам