Einzelnen Beitrag anzeigen

Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#5

Re: Form nur beim ersten mal starten anzeigen

  Alt 30. Aug 2004, 17:18
Hi Kay, Hi Kevin,

die Lösung ist einfacher als ihr denkt.
Sehen wir uns mal eine dpr-Datei an:
Delphi-Quellcode:
program Project1;

uses
  Forms,
  Unit1 in 'Unit1.pas{Form1};

{$R *.res}

begin
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.
Natürlich werden in Kevins Projekt mehrere Units in der uses-Klausel stehen. Das Hauptprogramm muss nun so geändert werden, dass je nach Bedarf Form1 oder Form10 angezeigt wird:
Delphi-Quellcode:
begin
  Application.Initialize;
  if (Bedingung) then
    Application.CreateForm(TForm1, Form1)
  else
    Application.CreateForm(TForm10, Form10);
  Application.Run;
end.
Die Bedingung wäre hier ein Flag in einer ini-Datei, welches du mit Hilfe der Unit IniFiles und dem TIniFile-Typ auslesen kannst. Dazu müsste es hier genug geben.
Da ich heute aber einen guten Tag (und nicht zu tun ) habe, will ich hier noch ein bisschen Source springen lassen
Delphi-Quellcode:
uses Forms,..., IniFiles;
var
  IniFile: TIniFile;
  ProgRun: Boolean;
begin
  Application.Initialize;
  IniFile := TIniFile.Create(Pfad_zur_Datei)
  ProgRun := IniFile.ReadBool('Section', 'ProgRun', False);
  if ProgRun then
    Application.CreateForm(TForm1, Form1)
  else
    Application.CreateForm(TForm10, Form10);
  IniFile.WriteBool('Section', 'ProgRun', True);
  IniFile.Free;
  Application.Run;
end.
Auf Resourcenschutzblöcke habe ich der Einfachkeit halber verzichtet.

Hoffe das klärt eure Probleme...

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat