Конференция "Компоненты" » Перехват изменений заголовка/шрифта [D7, WinXP]
 
  • HekTo (13.02.07 20:17) [0]
    Добрый вечер.

    Делаю специализированный компонент - наследник TCustomPanel. При этом необходимо отловить изменение Caption и Font (в т.ч. и в DesignTime).

    Изменение Caption реализовал через создание своего св-ва с таким же именем, но с моими обработчиками, а вот с Font'ом такое не проходит, т.к. при изменении его свойств само св-во Font не изменяется.

    Вопрос: как тут быть ? Пытался делать свой обработчик CM_FONTCHANGED - не работает, а процедура FontChanged приватная и не виртуальная :(

    WinXP, BDS2006.
  • Юрий Зотов © (13.02.07 23:47) [1]
    > Изменение Caption реализовал через создание своего св-ва

    Очень плохое решение (будет зависеть от приведения типа). VCL под рукой нет, но, насколько помню, можно заместить SetText или отловить CM_TEXTCHANGED. Такое решение будет работать независимо ни от чего.

    >  свой обработчик CM_FONTCHANGED - не работает

    Должен работать. Давайте код, будем смотреть.
  • DimaBr (14.02.07 10:23) [2]
    Абсолютно поддерживаю Юрия, перехватывем CM_FONTCHANGED, CM_TEXTCHANGED, возможно ещё и CM_PARENTFONTCHANGED, CM_SYSFONTCHANGED
 
Конференция "Компоненты" » Перехват изменений заголовка/шрифта [D7, WinXP]
Есть новые Нет новых   [119211   +28][b:0][p:0]