Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.03.09;
Скачать: [xml.tar.bz2];

Вниз

Handle   Найти похожие ветки 

 
webpauk ©   (2008-02-14 18:20) [0]

создаю свой клас
TPos = class(TComponent)
хочу послать ему сообщение. Проблема - у класса нет handle!
как его создаТЬ?


 
Palladin ©   (2008-02-14 18:22) [1]

Private
 m_hHandle:THandle
Public
 Property Handle:THandle Read m_hHandle;

так ты контрол создаешь все таки или класс? если контрол, и ему нужен handle для пересылки ему Windows сообщения (у меня сейчас телепатор перегреется) то наследоваться нужно не от TComponent, а от TWinControl...


 
we   (2008-02-14 18:28) [2]

ну поменял на TWinControl
а m_hHandle=0 - не задано


 
Семеныч   (2008-02-14 18:30) [3]

> we   (14.02.08 18:28) [2]

У TWinControl хэндл уже и так есть, второй не нужен.


 
Palladin ©   (2008-02-14 18:33) [4]


> [2] we   (14.02.08 18:28)

для понимания столь сложных вещей нужно не тупо копировать и вставлять, а идти чего нибудь читать прекрасного про создание компонентов...


 
we   (2008-02-14 18:35) [5]


> Palladin ©   (14.02.08 18:33) [4]

согласен!
тока нужно срочно...


 
we   (2008-02-14 18:37) [6]


> Семеныч   (14.02.08 18:30) [3]

убрал m_handle
теперь вылетает ошибка Contol has no parent window


 
Palladin ©   (2008-02-14 18:40) [7]

и чего? ошибка тебе ни о чем не говорит?

и вообще, что за навязчивая идее отправлять сообщения классу через send/postmessage

вызвал метод да и все... чего конкретно хочешь то?


 
we   (2008-02-14 18:44) [8]

class содержит несколько Tlabel, для одно из которых задано событие OnClick - уничтожение собственного класса


 
we   (2008-02-14 18:48) [9]

ладно, пойдем другим путем...
куда засунуть в сообщение ссылку на класс, из которого посылается сообщение?

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:50) [10]

вернее
PostMessage(Tform1(Owner).Handle, WM_DELVAR, ???, ???);


 
ketmar ©   (2008-02-14 18:54) [11]

Удалено модератором


 
Palladin ©   (2008-02-14 18:54) [12]

про приведение типов/type casting хоть одним глазом слышал?


 
we   (2008-02-14 18:55) [13]

essage(Tform1(Owner).Handle, WM_DELVAR, integer(self), ???);


 
Palladin ©   (2008-02-14 18:58) [14]

это вопрос или константация факта?


 
we   (2008-02-14 19:02) [15]

это ответ


 
Palladin ©   (2008-02-14 19:04) [16]

аа... типа сам себе FAQ... панятна :)



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

Форум: "Начинающим";
Текущий архив: 2008.03.09;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.043 c
15-1201789249
АИК
2008-01-31 17:20
2008.03.09
Модуль DBT


3-1192621905
gentos
2007-10-17 15:51
2008.03.09
как прикрепить файл к письму ?


4-1184561505
MultIfleX
2007-07-16 08:51
2008.03.09
"Системная" панель ??


15-1202051221
Dmitry S
2008-02-03 18:07
2008.03.09
UpdateLayeredWindow


15-1200650677
capkoh
2008-01-18 13:04
2008.03.09
Оценка качества кода





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский