![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как определить Pcontrol по hwnd
alfromorel © (2003-03-19 08:25:00)
Хочется обрабатывать сообщение Onmessage, но возникает проблема
хочется определить Pcontrol по msg.hwnd .
Зарание благодарен.
Avenger [NhT] (2003-03-24 13:53:00) [1]
Посчитай символы...ID_SELF есть и в Кол.пас... :)
SPeller (2003-03-22 07:02:00) [2]
А так короче:
Ctl := PControl( GetWindowLong( hWnd, GWL_USERDATA ) );
Avenger [NhT] (2003-03-21 12:50:00) [3]
>SPeller
У Меня наглюднее :)
alfromorel (2003-03-20 17:27:00) [4]
Большое спасибо. GetProp работает.
SPeller (2003-03-20 17:20:00) [5]
А можно при создании окна через SetWindowLong( GWL_USERDATA ... ) занести указатель на объект.
Avenger [NhT] (2003-03-20 13:12:00) [6]
Сорри немного ошибся: GetProp
const
ID_SELF: array[ 0..5 ] of Char = ( "S","E","L","F","_",#0 );
var
Control: pControl;
begin
Control := Pointer(GetProp(hwnd, ID_SELF));
вот и все!
alfromorel (2003-03-19 13:44:00) [7]
В kol.pas не GetAtom. Более того я вообще нигде не могу найти такую функцию.
Avenger [NhT] (2003-03-19 13:06:00) [8]
чтото типа
var
ctrl: pControl;
begin
ctrl := pControl(GetAtom(Handle, App_ID));
App_ID - это уникальный идентификатор, посмотри в Кол.пас
поищи строку GetAtom