-
Добрый вечер.
Делаю специализированный компонент - наследник TCustomPanel. При этом необходимо отловить изменение Caption и Font (в т.ч. и в DesignTime).
Изменение Caption реализовал через создание своего св-ва с таким же именем, но с моими обработчиками, а вот с Font'ом такое не проходит, т.к. при изменении его свойств само св-во Font не изменяется.
Вопрос: как тут быть ? Пытался делать свой обработчик CM_FONTCHANGED - не работает, а процедура FontChanged приватная и не виртуальная :(
WinXP, BDS2006.
-
> Изменение Caption реализовал через создание своего св-ва
Очень плохое решение (будет зависеть от приведения типа). VCL под рукой нет, но, насколько помню, можно заместить SetText или отловить CM_TEXTCHANGED. Такое решение будет работать независимо ни от чего.
> свой обработчик CM_FONTCHANGED - не работает
Должен работать. Давайте код, будем смотреть.
-
Абсолютно поддерживаю Юрия, перехватывем CM_FONTCHANGED, CM_TEXTCHANGED, возможно ещё и CM_PARENTFONTCHANGED, CM_SYSFONTCHANGED
|