Четвертый BORLAND С++ и его окружение



         

Класс TGadget - часть 2


также важное значение для определения нажатия кнопки "мыши" на

реквизите. Для нахождения и задания ограничивающего прямоугольника реквизита используются функции SetBounds (которая для отслеживания изменения и обновления внутреннего состояния реквизита в

производном классе должна переопределяться) и GetBounds.

Функция SetShrinkWrap позволяет автоматически настраивать

размер реквизита в зависимости от размеров окна. Это избавляет

вас от необходимости вычислять размер ограничивающего прямоугольника реквизита вручную. Автоматическую настройку горизонтального

и вертикального размера определяют параметры shrinkWrapWidth и

shrinkWrapHeight.

Размером реквизита является размер его ограничивающего прямоугольника. С помощью функции SetSize вы можете настроить размер

реквизита, не изменяя его положение. Для получения размера реквизита используется функция GetDesiredSize. В процессе разметки

окна реквизитов могут изменять желаемый размер реквизита.

Для улучшения интерфейса с пользователем вы можете реализовать функцию SysColorChange. Окно реквизита вызывает функцию SysColorChange каждого содержащегося в окне реквизита, когда окно

получает сообщение WM_SYSCOLORCHANGE. Заданная по умолчанию версия SysColorChange никаких действий не выполняет. Если вы хотите,

чтобы на реквизите отражались изменения системных цветов, нужно

реализовать эту функцию. При этом убедитесь в том, что вы удаляете и перераспределяете все ресурсы, зависящие от установок системных цветов.

Общедоступные элементы данных TGadget Clip и WideAsPossible

указывают, должен ли перед изображением реквизита примеряться отсекающий прямоугольник, и нужно расширять реквизит до заполнения

в окне всего доступного пространства.

С помощью функций SetEnabled и GetEnabled вы можете разрешить и запретить реквизит. Запрещенный реквизит не стирается. В

производном классе вы можете переопределить это поведение.

Функцию CommandEnable можно переопределить в производном

классе для разрешения команд. Заданная по умолчанию версия никаких действий не выполняет.




Содержание  Назад  Вперед