Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.11;
Скачать: 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 вся ветка

Текущий архив: 2005.07.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.035 c
10-1095163115
Sancho
2004-09-14 15:58
2005.07.11
TDataSetProvider сам делает Commit


1-1119431357
MakedoneZ
2005-06-22 13:09
2005.07.11
Срабатывание OnKeyPressed,когда форма не активна


4-1116439951
pound
2005-05-18 22:12
2005.07.11
бит чётности


3-1116933870
alex_***
2005-05-24 15:24
2005.07.11
MS SQL server


1-1118624422
ProGamer
2005-06-13 05:00
2005.07.11
Скопировать файл в буфер обмена