AW: Überprüfung bei Programmstart
Delphi-Quellcode:
Edit:
begin
if (not FileExists(ExtractFilePath(Application.ExeName) + 'Test.INI')) then begin //Einstellungen-Fenster öffnen, Daten selbst eintragen, Übernehmen -> Programm starten ShowMessage('Ini-Datei nicht gefunden. Daten im nächsten Schritt selbst eintragen.'); TFormEinstellungen.Create(Application).Show; end; end; und
Delphi-Quellcode:
ins OnClose von TFormEinstellungen.
Action := caFree;
|
AW: Überprüfung bei Programmstart
Zitat:
http://www.delphipraxis.net/190560-f...-zu-sehen.html |
AW: Überprüfung bei Programmstart
Zitat:
|
AW: Überprüfung bei Programmstart
Zeig mal, wie Du es machst.
Und die Krachermeldung. |
AW: Überprüfung bei Programmstart
1. Verlege die Prüfung aus dem Create in eine eigene Methode des Formulars (z. B. TForm1.CheckIni)
2. Füge vor der Zeile Application.Run die Prüfung in die dpr ein. Z. B.:
Delphi-Quellcode:
Ist der Rückgabewert von CheckIni <> true, wird das Programm nicht gestartet.
if Form1.CheckIni then Application.Run;
CheckIni könnte so in der Art aussehen:
Delphi-Quellcode:
function TForm1.CheckIni : Boolean;
begin if not FileExists(ChangeFileExt(Application.ExeName,'.ini')) then begin // Du musst hier dafür sorgen, dass das Einstellungsformular auch einen passenden Rückgabewert hat. // Buttons haben dafür z. B. die Eigenschaft ModalResult. Result := FormEinstellungen.ShowModal = mrOK; end; end; |
AW: Überprüfung bei Programmstart
Delphi-Quellcode:
Hier kracht er wieder bei mir.
Result := TFormSettings.ShowModal = mrOk;
Im dpr sieht das jetzt so aus:
Delphi-Quellcode:
begin
Application.Initialize; Application.MainFormOnTaskbar := True; Application.Title := 'Application'; Application.CreateForm(TApplication, Application); Application.Create; if Application.CheckIni then Application.Run; end. |
AW: Überprüfung bei Programmstart
Heißt Dein Hauptformular Application? Das ist sehr ungünstig.
|
AW: Überprüfung bei Programmstart
Außerdem würde ich das CheckIni nicht in TForm1 legen sondern diese Funktion direkt in die DPR-Datei schreiben und noch VOR Application.Initialize; aufrufen.
Delphi-Quellcode:
function CheckIni : Boolean;
begin Result := FileExists(ChangeFileExt(Application.ExeName,'.ini')); end; begin if not CheckIni then begin showmessage('Ini-Datei nicht vorhanden ...'); Halt(1); end; Application.Initialize; Application.MainFormOnTaskbar := True; Application.Title := 'Application'; Application.CreateForm(TApplication, Application); Application.Create; Application.Run; end. |
AW: Überprüfung bei Programmstart
Zitat:
|
AW: Überprüfung bei Programmstart
Was soll den die Zeile "Application.Create" bewirken?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:00 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz