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

Компонент и WM_DISPLAYCHANGE   Найти похожие ветки 

 
FX ©   (2004-07-02 18:45) [0]

Здравствуйте. Как заставить компонент, наследник TCustomControl, получать сообщения WM_DISPLAYCHANGE?
Спасибо.


 
Mim1 ©   (2004-07-02 21:11) [1]

Написав метод
   procedure mymsg(var msg:Tmessage); message wm_user+10;
вы сможете передать в него при помоши perform нужное событие.
Так же можно изменить предка вашего компонента на TWinControl и тогда указанный выше метод (mymsg) сработает наверняка.
Если же это невозможно, то можно сделать так же, как это реализовано в таймере. Т.е. создать невидимое окно allocatehwnd.
Возможно можно как то подписаться на получение этого сообщения от parent"a, к сожалению мне такого способа неитзвестно.


 
FX ©   (2004-07-05 11:48) [2]

1) TCustomControl является потомком TWinControl
2) Не работает код:

type
 TMyComponent = class(TCustomControl)
 private
   { Private declarations }
 protected
   { Protected declarations }
   procedure WMDisplayChange(var Msg: TWMDisplayChange); message WM_DISPLAYCHANGE;

...

implementation

procedure TMyComponent.WMDisplayChange(var Msg: TWMDisplayChange);
begin
 Windows.Beep(500, 500);
end;

...

Почему?

Спасибо.


 
Григорьев Антон ©   (2004-07-05 13:40) [3]

Ответил здесь: http://www.delphikingdom.com/asp/answer.asp?IDAnswer=23537


 
Mim1 ©   (2004-07-05 17:57) [4]


> TCustomControl является потомком TWinControl


Точно, я почемуто подумал что это предок TControl. По аналогии с TPanel -> TCustomPanel, TEdit->TCustomEdit и п.д.



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

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



Память: 0.45 MB
Время: 0.027 c
1-1119514595
polariton2
2005-06-23 12:16
2005.07.11
Картинки в шапке StringGrid


1-1119513253
TAN_K
2005-06-23 11:54
2005.07.11
Фреймы


14-1118331206
Андрей Жук
2005-06-09 19:33
2005.07.11
Разрешается ли вам распивать спиртные напитки на рабочем месте?


3-1117618656
Koala
2005-06-01 13:37
2005.07.11
Помогите создать запрос (Firebird 1.5)


1-1118325530
Sicilla
2005-06-09 17:58
2005.07.11
Запуск таймера до создания формы




   Наверх