![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Handle [D6, XP]
webpauk © (2008-02-14 18:20:00)создаю свой клас
TPos = class(TComponent)
хочу послать ему сообщение. Проблема - у класса нет handle!
как его создаТЬ?
Palladin (2008-02-14 19:04:00) [1]аа... типа сам себе FAQ... панятна :)
we (2008-02-14 19:02:00) [2]это ответ
Palladin (2008-02-14 18:58:00) [3]это вопрос или константация факта?
we (2008-02-14 18:55:00) [4]essage(Tform1(Owner).Handle, WM_DELVAR, integer(self), ???);
ketmar (2008-02-14 18:54:00) [5]Удалено модератором
Palladin (2008-02-14 18:54:00) [6]про приведение типов/type casting хоть одним глазом слышал?
we (2008-02-14 18:50:00) [7]вернее
PostMessage(Tform1(Owner).Handle, WM_DELVAR,???, ???);
we (2008-02-14 18:48:00) [8]ладно, пойдем другим путем...
куда засунуть в сообщение ссылку на класс, из которого посылается сообщение?
procedure TPos.OnDelClick(Sender: TObject);
begin
if MessageDlg(LblName.Caption, mtConfirmation, [mbYes, mbNo], 0)<>mrYes then Exit;
PostMessage(TPos(Owner).Handle, WM_DELVAR,0, 0);
end;
we (2008-02-14 18:44:00) [9]class содержит несколько Tlabel, для одно из которых задано событие OnClick - уничтожение собственного класса
Palladin (2008-02-14 18:40:00) [10]и чего? ошибка тебе ни о чем не говорит?
и вообще, что за навязчивая идее отправлять сообщения классу через send/postmessage
вызвал метод да и все... чего конкретно хочешь то?
we (2008-02-14 18:37:00) [11]
> Семеныч (14.02.08 18:30) [3]
убрал m_handle
теперь вылетает ошибкаContol has no parent window
we (2008-02-14 18:35:00) [12]
> Palladin © (14.02.08 18:33) [4]
согласен!
тока нужно срочно...
Palladin (2008-02-14 18:33:00) [13]
> [2] we (14.02.08 18:28)
для понимания столь сложных вещей нужно не тупо копировать и вставлять, а идти чего нибудь читать прекрасного про создание компонентов...
Семеныч (2008-02-14 18:30:00) [14]> we (14.02.08 18:28) [2]
У TWinControl хэндл уже и так есть, второй не нужен.
we (2008-02-14 18:28:00) [15]ну поменял на TWinControl
а m_hHandle=0 - не задано
Palladin (2008-02-14 18:22:00) [16]Private
m_hHandle:THandle
Public
Property Handle:THandle Read m_hHandle;
так ты контрол создаешь все таки или класс? если контрол, и ему нужен handle для пересылки ему Windows сообщения (у меня сейчас телепатор перегреется) то наследоваться нужно не от TComponent, а от TWinControl...