|
help plz.
|
|||
---|---|---|---|
#18+
Люди, ситуация такая ... Написал компоненту. Как в ней сделать так чтобы при помешении ее на форму она начинала обрабатывать некоторы сообщения приходящие в форму. Например WM_NCPAINТ ... Заранее спасибо ... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2001, 18:05 |
|
help plz.
|
|||
---|---|---|---|
#18+
Если где неправ - пусть меня зубры поправят :О) Главная форма походу пересылает компоненте все сообщения из очереди для которых у этой компоненты написан обработчик. Т.е. чтобы TTitler обрабатывала WM_NCPAINT надо так: TTitler = class(TComponent) private FParentForm: TForm; procedure WMPaint(var Message: TWMPaint); message WM_PAINT; public constructor Create(AOwner: TComponent); override; end; implementation constructor TTitler.Create(AOwner: TComponent); begin inherited Create(AOwner); ParentForm:=TForm(AOwner); end; procedure TTitler.WMPaint(var Message: TWMPaint); begin //Your code here end; Коментарии: наверное можно не заводить указатель на форму FParentForm и ссылаться на неё в обработчике, пользуясь TForm(SOwner) но почему-то у меня это в аналогичной ситуации не работало, и в результате - такой код. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2001, 08:34 |
|
help plz.
|
|||
---|---|---|---|
#18+
Если где неправ - пусть меня зубры поправят :О) Главная форма походу пересылает компоненте все сообщения из очереди для которых у этой компоненты написан обработчик. Т.е. чтобы TTitler обрабатывала WM_NCPAINT надо так: TTitler = class(TComponent) private FParentForm: TForm; procedure WMPaint(var Message: TWMPaint); message WM_PAINT; public constructor Create(AOwner: TComponent); override; end; implementation constructor TTitler.Create(AOwner: TComponent); begin inherited Create(AOwner); ParentForm:=TForm(AOwner); end; procedure TTitler.WMPaint(var Message: TWMPaint); begin //Your code here end; Коментарии: наверное можно не заводить указатель на форму FParentForm и ссылаться на неё в обработчике, пользуясь TForm(SOwner) но почему-то у меня это в аналогичной ситуации не работало, и в результате - такой код. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2001, 08:39 |
|
|
start [/forum/topic.php?fid=58&msg=32004566&tid=2120210]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
28ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
42ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 129ms |
0 / 0 |