Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Minimiziranje forme

[es] :: Pascal / Delphi / Kylix :: Minimiziranje forme

[ Pregleda: 1007 | Odgovora: 4 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

PeraKojotSuperGenije
Sasa Popovic
Beograd

Član broj: 44507
Poruke: 125
*.228.eunet.yu.



Profil

icon Minimiziranje forme27.05.2005. u 01:58

Imam projekat sa vise formi. Form1 mi je glavna forma. Kada se prikaze form2 form1 se hide-uje (form2 nije modalna forma). Kada hocu da minimiziram form2 ona se "spusti" u donji levi ugao desktopa iznad "start" dugmeta. Sta da uradim da minimiziranjem form2 potpuno nestane sa desktopa?
Sendvic uvek pada na namazanu stranu!
27.05.2005. u 01:58 

_BloB_
Slobodan Pavkov
www.aspdotnetfaq.com
Kula, Serbia

Član broj: 35144
Poruke: 108
*.nspoint.net.

Sajt: www.aspdotnetfaq.com


Profil

icon Re: Minimiziranje forme27.05.2005. u 07:09

izvini ali nije mi bas najjasnije sta zerlis da postignes?
da kada minimiziras form2 da se cela aplikacija minimizira?

malo pojasni da bi ti ljudi sa foruma mogli pomoci :)

poz
27.05.2005. u 07:09 

DelphiBoy
Andric Zoran

Član broj: 47300
Poruke: 27
213.244.200.*



Profil

icon Re: Minimiziranje forme27.05.2005. u 07:42
Probaj sledeci kod:
Code:
unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;

type
  TForm2 = class(TForm)
    procedure FormShow(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure WMSize(var Message: TWMSize); message WM_SIZE;
  end;

var
  Form2: TForm2;

implementation

uses Unit1;

{$R *.dfm}

procedure TForm2.WMSize(var Message: TWMSize);
begin
  if (Message.SizeType = SIZE_MINIMIZED) then
    begin
     Form1.Show;
     Form2.Hide;
    end;
end;

procedure TForm2.FormShow(Sender: TObject);
begin
  if Form1.Visible=true then
    Form1.Hide;
end;

end.


Napomena za koriscenje WMSIZE message: kada minimizujes glavnu formu ona nece primiti WMSize poruku i minimizovace sve forme koje su ti vezane za aplikaciju.
27.05.2005. u 07:42 

PeraKojotSuperGenije
Sasa Popovic
Beograd

Član broj: 44507
Poruke: 125
*.127.eunet.yu.



Profil

icon Re: Minimiziranje forme27.05.2005. u 22:25
POJASNJENJE:
U projektu imam dve forme i u svakom trenutku se vidi samo jedna od njih. Form1 se ponasa normalo kad se minimizira. Kada minimiziram form2, ona se ne "spusti" u taskbar vec se premesti u donji levi ugao desktopa iznad start dugmeta i vidi se samo ona gornja plava linija u kojoj pise ime forme i u kojoj su dugmici minimize, maximize, close.
Sendvic uvek pada na namazanu stranu!
27.05.2005. u 22:25 

johnnie
somewhere in Serbia

Član broj: 40975
Poruke: 259
*.041net.co.yu.



Profil

icon Re: Minimiziranje forme28.05.2005. u 01:21
Opet prica o formama:

Kreiraj ih runtime; dakle iz aplikacije izbrisi ono na pocetku
Code:
Application.Initialize;
  Application.CreateForm(TForm1, Form1);
 // Application.CreateForm(TForm7, Form7);
  // Application.CreateForm(TForm6, Form6);
  //Application.CreateForm(TForm5, Form5);
  //Application.CreateForm(TForm3, Form3);
  //Application.CreateForm(TForm4, Form4);   ... itd

vidis da je rezervisanje forme stavljeno kao komentar, dakle apliakcija ih pri startu ne kreira, vec ti to radis po potrebi.
formu koju sktiviras, pozivas sa
Code:

If not assigned(form4) then form4:=tform4.create(application);
form3.close;  // odnosno o kojoj se formi radi, tj. koju zatvaras
form4.show;// koju formu otvaras itd..
.....

U svakoj od formi na OnClose event stavis:
Code:

action:=cafree;
form4:=nil; // odnosno o kojoj se formi radi, tj. koju zatvaras

Tako ces spreciti memory leak, jer aplikacija ne zauazima memorijski prostor prilikom pokretanja, vec samo kod izvrsavanja forme. Forma je uustvari promenjliva i delphi mora da joj dodeli prostor u memoriji; zamisli da imas program sa 100 formi, kako bi to radilo da su sve zauzete unapred. Ovo ti je skolski primer iz knjige.
Pozdrav
Still going strong...
28.05.2005. u 01:21 

[es] :: Pascal / Delphi / Kylix :: Minimiziranje forme

[ Pregleda: 1007 | Odgovora: 4 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.