Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Window Handle [D7, WinXP]


P@vel ©   (2004-06-17 09:52:00) 

Может кто не занимается поиском хаккеров подскажет.


Type
 TServer = class(TControl)

........................

Constructor TServer.Create;
begin
 inherited Create(NIL);
 name:=self.ClassName;
 Handle:=FindWindow(PChar(name),Nil);



Уж очень хочется получить дескриптор этого объекта.


P@vel   (2004-06-17 16:24:00) [1]

Если я пишу inherited значит есть ещё что то кроме.


evvcom   (2004-06-17 12:01:00) [2]

И все же в TStupidWinControl лучше Create оставить с параметром Owner, а уж пользователь пусть решает задавать ему владельца или передавать nil. Это во-первых, универсальнее, а во-вторых, писать меньше (если в Create кроме inherited больше ничего нет), а значит (в этом случае точно) Create оверрайдить не надо, и код результата получится меньше.


P@vel   (2004-06-17 11:50:00) [3]

Ладно забудем. Всё работает и славненько.


Sandman25   (2004-06-17 11:45:00) [4]

Не хочу выглядеть бестолковым, но в чем беспонтовость моего ответа? Я должен был догадаться, что Вы все знаете, но просто допустили описку? Сначала предок, потом родитель, потом владелец...


P@vel   (2004-06-17 11:41:00) [5]


> Sandman25


Смотри выше
inherited Create(self.Owner);
inherited Create(NIL);
inherited Create(self);

Среди этих вариантов. Есть inherited Create(NIL); И пример у вас такой же как и у меня. Но у меня почему то при компиляции возникает ошибка. Но большое вам спасибо я уже разобрался.
P.S Это не реакция на замечание о книжках. Это реакция на безпонтовые ответы.


Sandman25   (2004-06-17 11:29:00) [6]

type
 TStupidWinControl = class(TWinControl)
 public
   constructor Create; reintroduce;
 end;

{ TStupidWinControl }

constructor TStupidWinControl.Create;
begin
 inherited Create(nil)
end;

ЗЫ. Вы не первый (и не последний), кто так реагирует на замечания о книжках :)


Тимохов   (2004-06-17 11:28:00) [7]

на глазах умнеете, сначала вы у TObject пытались handle искать

http://www.delphimaster.ru/cgi-bin/forum.pl?id=1087420050&n=0


P@vel   (2004-06-17 11:10:00) [8]

Удалено модератором
Примечание: мат


Sandman25   (2004-06-17 10:58:00) [9]

[6] P@vel   (17.06.04 10:56)

Этот параметр - не родитель, а владелец. Разница огромна


P@vel   (2004-06-17 10:56:00) [10]

И всё же ?


Тимохов   (2004-06-17 10:47:00) [11]


> P@vel   (17.06.04 10:44) [4]

а это уже другой вопрос.
каждый вопрос принято создавать отдельным топиком :)


P@vel   (2004-06-17 10:44:00) [12]

Мне просто интересно можно создать компонент не имеющий родителя, это всё что я спрашиваю.


Sandman25   (2004-06-17 10:34:00) [13]

[2] P@vel   (17.06.04 10:32)

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


P@vel   (2004-06-17 10:32:00) [14]

Как создать TWinControl не имеющий предка.


inherited Create(self.Owner);
inherited Create(NIL);
inherited Create(self);

Всё это вызывает ошыбки.


Тимохов   (2004-06-17 10:02:00) [15]

сложно искать черную кошку в комнате, особенно если ее там нет.

не получится - у control нет handle (т.к. нет окна). Он поясвляется только у wincontrol.


Наверх

Титульная страница Поиск, карта сайта Написать письмо