

| стрелялки |
| спорт |
| драки |
| стратегии |
| гонки |
| логические |
| азартные |
| аркады |
| эротические |
| фильмы онлайн |
| Взаимодействие с командным объектом |
|
При разработке проектов большой и средней степени сложности (в особенности приложений с серьезным пользовательским интерфейсом) для централизации управления приложением программисты Delphi часто применяют особый вид невизуальных элементов управления, называемых командами. Этот тип объектов строится на основе класса TBasicAction и будет подробно рассмотрен в главе 17 «Централизованное управление приложением», а пока отметим наличие у потомков класса TControl специального свойства: property Action : TBasicAction; предназначенного для связи обычного элемента управления с командой TBasicAction. Как только связь установлена, элемент управления TControl начинает работать в интересах командного объекта. Его заголовок, всплывающая подсказка, пиктограмма изменяются в соответствии с настройками команды. Но самое главное в том, что подключенный к команде элемент управления может стать инициатором вызова ключевого события командного компонента OnExecute(). Хотя с момента установления связи с командным объектом наш элемент управления превращается в своего рода слугу этой команды, тем не менее он имеет право немножко поруководить своим «хозяином». Так, для инициирования события OnExecute() командного объекта компонент вызовет функцию: function ExecuteAction(Action: TBasicAction): Boolean; dynamic; Для принудительной установки связанного с компонентом командного объекта в актуальное, соответствующее текущей обстановке состояние можно вызвать метод: function UpdateAction(Action: TBasicAction): Boolean; dynamic; |
