Forma z DLLa

0

Umieściłem formę w bibliotece dll, ale nie umiem jej pokazać. Gdy pokażę ją przez showmodal, zablokuję główną formę programu, a jak daję show lub visible:=true, to forma się pokazuje na ułamek sekundy i zaraz znika. Jak rozwiązać ten problem?---------------------------
Delphi 6

Pozdrówka

0

kiedys to robilem... jak bedzie cos zle, to prosze o poprawki ;)

w dll'u:

procedure PokazForme(MainFrm: TForm) ;
var
Forma: TForm ;
begin
Application.Handle := MainFrm.Handle ; *zeby nie bylo dodatkowej szufladki
Forma := TForm.Create(Forma) ;
with Forma do
*ustawiasz paramerty
Show ;
end ;
end ;

Jak nie dzial, to sorka, nie mam otwartego Delphi..

Pozdrawiam {hello} --LSD - Discover The New Way Of Thinking

0

Nie chce działać, tylko zamyka program. Może chodzi o to, że nie przekazuję formy w parametrze, tylko jest ona zawarta w bibliotece?---------------------------
Delphi 6

Pozdrówka

0

Cos sobie przypomnialem :)

  1. Forma spokojnie moze byc w dll, ale po co ? :) Sheitar kiedys pisal ze roznice wielkosci po dodaniu nowej formy do projektu sa rzedu kilku Kb, a dll zajmuje dosc sporo, nawet po spakowaniu, no i trzeba samemu ukladac wszystko, ze tak powiem w myslach, bo przeciez nie masz dostepu do formy z dll'a tak jak normalnie w edytorze, no chyba ze chcesz zrobic jakiegos plugina ;)
    &ltdephi&gt2. procedure ShowWindow; stdcall external 'Example_lib.dll' name 'ShowWindow';
    Kiedys mialem problem z eksportowaniem, wyskakiwaly dziwne bledy, ale kiedy zlikwdowalem stdcall to wszystko bylo juz OK :)

Na razie na nic wiecej nie wpadlem, poszukam w wolnym czasie, ale za 3 dni mnie juz nie ma, wiec nie wiem czy cos znajde.

Pozdrawiam {hello} --LSD - Discover The New Way Of Thinking

0

Chodzi własnie o to, że to ma być plug'in więc musi być w DLLu i musi być ładowany dynamicznie. Poza tym nieprawdą jest, że wszystko trzeba układać w myślach. Jak dasz na new form przy tworzeniu DLLa, to będziesz miał normalną formę, na której możesz układac komponenty.---------------------------
Delphi 6

Pozdrówka

1 użytkowników online, w tym zalogowanych: 0, gości: 1