Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.05.23;
Скачать: CL | DM;

Вниз

Не работает SetParent   Найти похожие ветки 

 
AFROLOV   (2002-03-20 15:06) [0]

Всем привет.
Не работает SetParent.

Я хочу посадить своей форме нового родителя.
Вот пример кода:
procedure TListBoxForm.ShowForm(NP:HWND;Main_WND:HWND);
var
OldParent:HWND;
begin
ListBox1.Items.Add("Parent New:="+IntToHex(NP,8));
ListBox1.Items.Add("Parent Old:="+IntToHex(GetParent(ListBoxForm.Handle),8));

OldParent:=Windows.SetParent(ListBoxForm.Handle,NP);//Parent почему то не изменяется :-(

ListBox1.Items.Add("Parent:="+IntToHex(GetParent(ListBoxForm.Handle),8));

Visible:=true;
end;

Форма создается при запуске приложения
..
Application.CreateForm(TListBoxForm, ListBoxForm);
..


 
MBo ©   (2002-03-20 15:36) [1]

ты, может, путаешь Windows - Parent и VCL-Parent.
форме VCL-Parent вообще-то не нужен.
а менять его у любого контрола можно так
AControl.Parent:=NewParent;
Если тебе надо сменить владельца (Owner), который отвечает за освобождение, то не стоит делать этого из собственного обработчика.


 
AFROLOV   (2002-03-20 17:24) [2]

Нет, мне мне нужен именно Windows Parent. Я хочу сделать окошко в MSWord типа того в котором в редакторе Delphi после ввода "." появляются свойства объекта. Мне народ присоветовал сделать окно редактора MSWord родительским для моей формы с ListBox.


 
troits ©   (2002-03-20 19:58) [3]

Может это и можно сделать, но для SetParent параметры должны принадлежать одному процессу. Можно попробовать через Hook.


 
AFROLOV   (2002-03-21 15:50) [4]

Через Hook слишком много сообщений надо обрабатывать.
И потом ксть такой метод Form1:=TForm1.CreateParented(My_Wnd);
Это работает только надо отслеживать момент закрытия окна My_Wnd иначе возникает ошибка.



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

Текущий архив: 2002.05.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.024 c
1-73294
manumba
2002-05-11 16:05
2002.05.23
как можно документ МС_оффиса (ворд, ексель) отобразить на форме


6-73339
Андрей Сенченко
2002-03-12 22:10
2002.05.23
Непонятная ошибка в NMSMTP


1-73175
zZet
2002-05-09 21:01
2002.05.23
Как заставить зе бат запускаться правильно?


1-73166
mifi
2002-05-13 23:08
2002.05.23
рлык TO form


7-73418
dimmu
2002-02-24 20:00
2002.05.23
Работа с кнопкой