Вниз
Скачать: CL | DM;

Компонент не реагирует на сообщение   Найти похожие ветки 

← →
Navi   (2005-08-14 16:52) [0]

Здравствуйте!
Компонент наследник TComponent, надо в нем отловить изменение шрифта системного меню. В private пишу:
procedure Wm_SettingChange(var Message: TWMSettingChange); message WM_SETTINGCHANGE;

В implementation:

procedure TMT.Wm_SettingChange(var Message: TWMSettingChange);
begin
 inherited;
 ShowMessage(Format("%d:%d", [Message.Msg, Message.Flag]));
end;

Меняю шрифт, но не реагирует. Как лечить? Спасибо.


← →
Navi   (2005-08-14 16:54) [1]

А-а, каюсь, надо было в раздел Компоненты. Прости, Админ.


← →
Юрий Зотов ©   (2005-08-14 17:03) [2]

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


← →
Navi   (2005-08-20 08:27) [3]

Понял. А как сделать-то?


← →
Юрий Зотов ©   (2005-08-20 16:55) [4]

Честно сказать, смысла в таком компоненте не вижу. А сделать его можно, например, так:

1. Компонент ставит локальный хук, а тот ловит WM_SETTINGCHANGE и, поймав, уведомляет об этом компонент.

2. Поскольку такой компонент нужен один на все приложение, он выполнен, как синглтон.


← →
Наиль ©   (2005-08-20 20:00) [5]

Рискну дать пояснения.
Хук - Application.HookMainWindow
А про синглтон очень подробно рассказано в ветке
Основная-> Автор: Страждущий; Тема - Уровень; Дата - 20.03.03
Это моя любимая ветка.
Найти можно в дайджестах этого форума, если они работают (почему-то я не могу в них войти).


← →
Юрий Зотов ©   (2005-08-20 20:24) [6]

Я бы все же использовал SetWidowsHookEx.


← →
Leonid Troyanovsky ©   (2005-08-21 19:07) [7]


> Navi   (14.08.05 16:52)  

> Компонент наследник TComponent, надо в нем отловить изменение
> шрифта системного меню. В private пишу:


TControl получает cm_sysfontchanged.

--
Regards, LVT.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.024 c
15-1138195910
Petr V. Abramov
2006-01-25 16:31
2006.02.12
Хочу создать ветку


15-1137697662
Ломброзо
2006-01-19 22:07
2006.02.12
Вопрос по конечным автоматам


1-1137068572
oleg__
2006-01-12 15:22
2006.02.12
Формат даты


15-1137696182
yuril
2006-01-19 21:43
2006.02.12
Требуется программист


9-1124859350
Slavikk
2005-08-24 08:55
2006.02.12
Маштабируемая физика




   Наверх