Вниз
Скачать: CL | DM;

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

 
sdn ©   (2002-03-15 10:39) [0]

Доброе время суток, уважаемые!

Так вот... Хочу сделать MDI-интерфейс у приложения, но не как обычно... Смысл такой. В exe только MainForm (он же MDI-server (FormStyle := fsMDIForm)), а Child`ы, хочу располагать в dll. Делаю так...

В exe...

function CrtMDIForm(AHandle: THandle): TForm; external "Project2.dll" index 1;

procedure TForm1.N1Click(Sender: TObject);
var
Child: TForm;
begin
Child := CrtMDIForm(Application.Handle);
Child.FormStyle := fsMDIChild;
end;

В dll...

function CreateMDIForm(AppHandle: THandle): TForm; exports CreateMDIForm;

function CreateMDIForm(AppHandle: THandle): TForm;
begin
Application.Handle := AppHandle;
Result := TMDIForm.Create(Application);
// Application.CreateForm(TMDIForm, Result); <--- Так тоже пробовал
end;

Вроде всё должно быть по путю..., но (!!!) при вызове метода TForm1.N1Click - происходит исключение "No MDI Forms are curently active".
Как быть? Есть идеи?

С наилучшими пожеланиями,
Дмитрий
ICQ: 58245670
Odigo: 6549174


 
McSimm ©   (2002-03-15 12:48) [1]

http://delphi.mastak.ru/cgi-bin/forum.pl?answer=1&id=1015263160&n=0




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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.009 c
1-90969
SecondGray
2002-03-15 05:53
2002.03.28
Delphi 5&Win98 против Delphi5&Win2K


1-90914
IronHawk
2002-03-18 18:19
2002.03.28
Проблема, разыва дробного числа !


4-91119
Prog_maker
2002-01-26 17:13
2002.03.28
Программирование COM порта


6-91025
Bobr
2002-01-14 17:50
2002.03.28
Как получить имя текущего пользователя в NT сервисе


1-90826
Aleksandr
2002-03-15 14:03
2002.03.28
Почему у потока вызывается Terminate?




   Наверх