![]() |
Loginfenster schließen aber Anwendung offen lassen?
Hallo. Ich wollte jetzt nachträglich so eine Art LoginFenster haben, um die Benutzer mit Ihren Rechten in der Datenbank abzufragen. Also hab ich eine Form erzeugt mit Benutzer, Passwort, Einloggen und Abbrechen. Diese Form ist Stay-On-Top und hat keine Titelleiste. Zudem habe ich es in den Optionen als HauptFenster gesetzt. Das einloggen würde theoretisch funktionieren, nur wie krieg ich das Fenster zu ohne die Anwendung zu schließen?
Ich hab es mit Close und frmLOGIN.Close; versucht, aber da geht alles zu. Dann hab ich das Login auf Visible:=false gesetzt, an sich eine schöne Sache, nur kann ich nun das Programm aus meinen bestehenden Forms mit Close nicht schließen. Jetzt steh ich vor einer Sackgasse. Mit der Forensuche bin ich nur über SplashScreens gestolpert aber daraus werd ich nicht schlau bzw denke ich ist das nicht der richtige Weg. Wie habt ihr so ein Login gelöst? |
Re: Loginfenster schließen aber Anwendung offen lassen?
einfach das Fenster nicht als Hauptfenster nehmen wäre die einfachste Lösung. Was spricht dagegen?
|
Re: Loginfenster schließen aber Anwendung offen lassen?
Ich will ja vorher abfragen was der Benutzer darf. Das muss ich machen bevor die Anwendung weiter ausgeführt wird.
|
Re: Loginfenster schließen aber Anwendung offen lassen?
Die zweite Möglichkiet ar schon richtig. Du musst nur schreiben frmLogin.Close, da die Login-Form jetzt deine Hauptform ist. Oder wenn du das nicht willst und die Login-Form nicht dein Hauptfenster sein soll, machst du es so:
Delphi-Quellcode:
type
TForm1 = class(TForm) procedure FormShow(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } bFirstTime: Boolean public { Public declarations } end; var Form1: TForm1; implementation uses Unit2; {$R *.dfm} procedure TForm1.FormShow(Sender: TObject); begin if bFirstTime then begin bFirstTime := False; Form2.ShowModal; end; end; procedure TForm1.FormCreate(Sender: TObject); begin bFirstTime := True; end; |
Re: Loginfenster schließen aber Anwendung offen lassen?
Wenn ich es als Hauptform lösen könnte wäre es schon gut so. Aber bei mir schliest sich alles mit frmLOGIN.Close. Oder ist da falsch die nächste Form mit Show aufzurufen?
Delphi-Quellcode:
if (i <> 1) then begin
ShowMessage('Benutzername oder Kennwort falsch'); end else begin frmMAIN.Show; frmLOGIN.Close; end; |
Re: Loginfenster schließen aber Anwendung offen lassen?
Zitat:
|
Re: Loginfenster schließen aber Anwendung offen lassen?
Gut dann mach ich es so. Beim Fenster schließen hab ich noch ein frmMAIN.Close eingebaut somit schließt sich das Hauptfenster und die Anwendung wird beendet. Das sehe ich so richtig.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz