Keşke bunu farklı bir başlık altında sorsaydın. Bu konuda soru soracaklar cevabı bulamayabilirler.
Aksine çok daha komplike bir hale de dönüştürmek mümkün ama şöyle basit tarafından örnek ile cevap vermiş olayım.
Kodların içine açıklamalarla yazdım.
// LoginFormu FREE ettiğimizde Proje sona ermesin isteriz. Değil mi ?
// Onun için :
// (1) Önce MainFormu Create ediyoruz..
Application.CreateForm(TForm2, Form2);
// (2) Sonra da LoginFormu Create ediyoruz..
Application.CreateForm(TForm1, Form1);
// (3) Login şartı sağlanmış ise Main Formumuz görünür,
Proje Dosyamız.
Kod: Tümünü seç
program Project3;
uses
Forms,
Controls,
Unit1 in 'Unit1.pas' {Form1}, // Login Formumuz...
Unit2 in 'Unit2.pas' {Form2}; // Main Formumuz...
{$R *.res}
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
// LoginFormu FREE ettiğimizde Proje sona ermesin isteriz. Değil mi ?
// Onun için :
// (1) Önce MainFormu Create ediyoruz..
Application.CreateForm(TForm2, Form2);
// (2) Sonra da LoginFormu Create ediyoruz..
Application.CreateForm(TForm1, Form1);
// (3) Login şartı sağlanmış ise Main Formumuz görünür,
if Form1.ShowModal = mrOk
then begin
Form1.Close;
Application.ProcessMessages;
// Form2.ShowModal;
Application.Run;
end // Aksi taktirde proje sona erer.
else Application.Terminate;
end.
UNIT 1 yani Login Formumuz..
Kod: Tümünü seç
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
ModalResult := mrOk;
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
ModalResult := mrCancel;
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action := caFree;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
Form1 := Nil;
end;
UNIT 2 ( yani Main Formumuz nasıl ise öyle. )