AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

alternativen zu close???

Offene Frage von "brutus"
Ein Thema von brutus · begonnen am 1. Apr 2005 · letzter Beitrag vom 3. Apr 2005
Antwort Antwort
brutus

Registriert seit: 12. Sep 2003
45 Beiträge
 
#1

alternativen zu close???

  Alt 1. Apr 2005, 19:33
hier ist mein quellcode
Delphi-Quellcode:
procedure TFDUP.FormCreate(Sender: TObject);
begin
hacker:=0;
uni:=TAuswertung.create;
user;
//DATEI SCHLIESSEN !!!!
end;

procedure tfdup.user;
VAR PW:string;
begin

uni.id:=strtoint(InputBox('Bitte geben sie ihre Benutzer-ID ein','Ihre ID',inttostr(-maxint)));
PW:=InputBox('Bitte geben sie ihr Passwort ein'
             ,'Ihr Passwort','OI');
IF (uni.id<>0) OR ((PW<>'OI')) THEN
 IF NOT passwort(pw) THEN
  BEGIN
   showmessage('Das von ihnen eingegeben Passwort ist Falsch !');
   inc(hacker);
   CASE hacker OF
   1..3: IF MessageDlg('Wollen sie es noch einmal probieren?',
            mtConfirmation, [mbYes, mbNo], 0) = mrYes
         THEN user
         ELSE
          BEGIN
           MessageDlg('Das Programm wird beendet.', mtInformation, [mbOk], 0);
           //DATEI SCHLIESSEN !!!!
          END;

      4: BEGIN
              showmessage('Sie haben zum 4. mal ein falsches Passwort eingegeben'+#13+
                     'Überprüfen sie die folgende Eingabe besonders sorgfältig !!!');
              user;
         END;
      5: BEGIN
              showmessage('Sie haben zum 5. mal ein falsches Passwort eingegeben'+#13+
                          'Das Programm wird beendet !');

          //DATEI SCHLIESSEN !!!!
         END

 ELSE
    BEGIN
     showmessage('Gratulation !'+#13+''+''+#13+''+'Ihr Passwort ist richtig !'+#13+'');
     showmessage('Herzlich Willkomen'+#13+''+''+#13+''+name+'!'+#13+'');
     hacker:=0;
    END;
end;
end;
end;
also mit close wird das programm nicht geschlossen weil es ebend bei form create drinne steht- was kann ich stattdessen machen???
Der, Die Das,
Wer ,Wie, Was,
Wieso? Weshalb? Warum?
Wer nicht fragt bleibt dumm.
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#2

Re: alternativen zu close???

  Alt 1. Apr 2005, 19:36
Application.Terminate
  Mit Zitat antworten Zitat
brutus

Registriert seit: 12. Sep 2003
45 Beiträge
 
#3

Re: alternativen zu close???

  Alt 1. Apr 2005, 19:37
werden danach auch alle anderen units und formulare aus dem speicher geschmissen?
Der, Die Das,
Wer ,Wie, Was,
Wieso? Weshalb? Warum?
Wer nicht fragt bleibt dumm.
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: alternativen zu close???

  Alt 1. Apr 2005, 19:40
Was willst du beenden? Dein Programm oder eine andere Anwendung?

Bei deinem eigenen verwende Halt oder Application.Terminate.

Bei einer anderen: http://www.dsdt.info/tipps/?id=175 und http://www.dsdt.info/tipps/?id=636

Mit ersterem beendest du eine Anwendung mit dem Exenamen, den du mit zweiterem herausfindest, indem du den Fenstername angibst. Auf der gleichen Seite steht auch noch woanders, wie man ein Handle dazu verwendet.

Und zu deiner Frage: Ja. AFAIK wird das Formular beim Ereignis FormDestroy freigegeben und FormDestroy wird bei Terminierung der Anwendung ausgelöst. Die genaue Reihenfolge kannst du in der OH nachschlagen.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: alternativen zu close???

  Alt 1. Apr 2005, 19:41
Moin Brutus,

Zitat von brutus:
werden danach auch alle anderen units und formulare aus dem speicher geschmissen?
ja, und?

Denn

Zitat von brutus:
also mit close wird das programm nicht geschlossen ...
das war ja offensichtlich so gedacht?

Wobei ich allerdings die Begründung, warum es mit close nicht geht nicht so ganz nachvollziehen kann.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.426 Beiträge
 
Delphi 2007 Professional
 
#6

Re: alternativen zu close???

  Alt 1. Apr 2005, 19:42
Vielleicht kannst du es direkt in die DPR reinschreiben
Delphi-Quellcode:
begin
    if CheckPassword then begin
      Application.Initialize;
      Application.CreateForm(TForm1, Form1);
      Application.Run;
   end;
end.
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#7

Re: alternativen zu close???

  Alt 1. Apr 2005, 19:43
Zitat von Christian Seehase:

Zitat von brutus:
also mit close wird das programm nicht geschlossen ...
das war ja offensichtlich so gedacht?

Wobei ich allerdings die Begründung, warum es mit close nicht geht nicht so ganz nachvollziehen kann.
Hi,

wenn du zwei Formen offen hast, aber eine mit visible := false; und du machst bei der sichtbaren ein Close; wird das Sichtbare geschlossen, aber das andere ist noch offen und die Anwendung läuft noch.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: alternativen zu close???

  Alt 1. Apr 2005, 19:49
Moin Manu,

Zitat von Spider:
wenn du zwei Formen offen hast, aber eine mit visible := false; und du machst bei der sichtbaren ein Close; wird das Sichtbare geschlossen, aber das andere ist noch offen und die Anwendung läuft noch.
so Bei mir nicht.

Wenn Du das Hauptformular mit Close schliesst, wird üblicherweise auch die Anwendung beendet.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#9

Re: alternativen zu close???

  Alt 1. Apr 2005, 19:50
Zitat von Spider:
Zitat von Christian Seehase:

Zitat von brutus:
also mit close wird das programm nicht geschlossen ...
das war ja offensichtlich so gedacht?

Wobei ich allerdings die Begründung, warum es mit close nicht geht nicht so ganz nachvollziehen kann.
Hi,

wenn du zwei Formen offen hast, aber eine mit visible := false; und du machst bei der sichtbaren ein Close; wird das Sichtbare geschlossen, aber das andere ist noch offen und die Anwendung läuft noch.
Das gilt allerdings nur, wenn die Form, die geschlossen wird, nicht die Hauptform ist. Sonst wird das ganze Programm geschlossen.

Zusammengefasst:
  • Close in Verbindung mit dem Hauptformular beendet die Anwendung, OnClose und OnCloseQuery werden aber noch aufgerufen.
  • Application.Terminate beendet die Anwendung normal (afaik ohne oben genannte Events)
  • Halt ist ein Programmabbruch, sollte nicht verwendet werden
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: alternativen zu close???

  Alt 3. Apr 2005, 10:21
Ich denke, bei Application.terminate wird OnCloseQuery nicht ausgeführt, ob OnClose ausgeführt wird weiß ich nicht, aber man kann ja folgende Proc schreiben:

Delphi-Quellcode:
procedure TForm1.beenden;
begin
onclose(Form1);
//onclosequery, wenn man will.
application.terminate;
end;
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:25 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