Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Befehlt zum schließen des Programms (https://www.delphipraxis.net/109749-befehlt-zum-schliessen-des-programms.html)

ko3rby 6. Mär 2008 22:20


Befehlt zum schließen des Programms
 
Hallo Leute,
ich würde gerne mal von auch wissen ob es einen speziellen Befehl für das schließen des Programmes gibt? Wollte den dann per Button ins Programm einbauen.

MFG

ko3rby

s-off 6. Mär 2008 22:21

Re: Befehlt zum schließen des Programms
 
Hallo,

benutze TForm.Close - so kannst Du noch im CloseQuery-Event eingreifen.

Für die Harten gibts dann noch
Halt und Application.Terminate ;)

gmc616 6. Mär 2008 22:45

Re: Befehlt zum schließen des Programms
 
oder auch
Delphi-Quellcode:
Application.Terminate;
wenn im FormCreate irgendetwas nicht so gefunzt hat, wie es sein sollte.

Tharon 6. Mär 2008 23:49

Re: Befehlt zum schließen des Programms
 
Hi ko3rby,

die Applikation wird beendet, wenn das Hauptformular der Applikation geschlossen wird. Daher musst Du nichts anderes tun, als das Hauptformular zu schliessen.

Delphi-Quellcode:
procedure TfrmMain.btnCloseClick(Sender: TObject);
begin
  Self.Close;
end;
Besser als in diesem Beispiel ist es allerdings, eine Action zu verwenden und diese einem Button (vermutlich in einer Toolbar) zuzuweisen. Sicher gibt es ja dann auch noch einen Menüpunkt zum Beenden... :wink:

Generell sollten es im Code eigentlich keine Click-Ereignisbehandlungen für Buttons und Menüs geben! Von ganz wenigen Ausnahmen vielleicht mal abgesehen (wie ein btnOKClick in einem modalen Dialogfenster).

Und bevor Du jetzt fragst... lies Dir die Hilfe zum Thema ActionList durch :wink:

RavenIV 7. Mär 2008 08:10

Re: Befehlt zum schließen des Programms
 
Zitat:

Zitat von Tharon
Besser als in diesem Beispiel ist es allerdings, eine Action zu verwenden und diese einem Button (vermutlich in einer Toolbar) zuzuweisen. Sicher gibt es ja dann auch noch einen Menüpunkt zum Beenden... :wink:

Generell sollten es im Code eigentlich keine Click-Ereignisbehandlungen für Buttons und Menüs geben! Von ganz wenigen Ausnahmen vielleicht mal abgesehen (wie ein btnOKClick in einem modalen Dialogfenster).

Wer sagt, dass Actions immer besser sind?

Wie kommst Du zu der Aussage, dass es keine Click-Ereignisse geben soll?


Sorry, aber ist in meinen Augen beides Schwachsinn. :gruebel: :|

Sharky 7. Mär 2008 08:15

Re: Befehlt zum schließen des Programms
 
Zitat:

Zitat von RavenIV
...
Wer sagt, dass Actions immer besser sind?

Wie kommst Du zu der Aussage, dass es keine Click-Ereignisse geben soll? ...

Hai RavenIV,

immer ist wohl nicht ganz richtig. Aber die Verwendung von Actions macht in meinen Augen schon sin.
Zum einen habe ich die Funktionen in einer Methode und zum anderen ist diese nicht direkt an die GUI gebunden.


Zitat:

Zitat von RavenIV
Sorry, aber ist in meinen Augen beides Schwachsinn. :gruebel: :|

Ich finde es nicht nett die Aussage von einem anderen User als "Schwachsinnig" zu bezeichnen. :roll:

sk0r 7. Mär 2008 08:19

Re: Befehlt zum schließen des Programms
 
Oder einfach ExitProcess() benutzen.

RavenIV 7. Mär 2008 08:39

Re: Befehlt zum schließen des Programms
 
Zitat:

Zitat von Sharky
Zum einen habe ich die Funktionen in einer Methode und zum anderen ist diese nicht direkt an die GUI gebunden.

Auch das ist dummes Zeug. (gefällt DIR dieses Wort besser?)

Ist eine Action denn nicht an die GUI gebunden?
Zudem baut man keine Funktionalität in Callback-Methoden (OnClick, OnActivate, usw.) ein.

z.B.:
Delphi-Quellcode:
procedure myForm.BuEinfuegen.OnClick(...);
begin
  InsertPicture(...);
end;

procedure myForm.InsertPicture(...);
begin
  // hier wird dann alles nötige erledigt
  ...
  ...
end;
Wenn nun noch ein Menueintrag für "Bild einfügen" hinzukommt, muss ich nur dort im OnClick auch InsertPicture(...) aufrufen.

Franz Kogler 7. Mär 2008 09:11

Re: Befehlt zum schließen des Programms
 
Hallo,

Halt(0) geht ebenfalls.

SirThornberry 7. Mär 2008 09:16

Re: Befehlt zum schließen des Programms
 
"Halt" kann aber zu Problemen führen. Denn beim Aufruf von Halt werden noch alle Finalization Abschnitte durchlaufen jedoch nicht die erstellten Objekte frei gegeben.


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:36 Uhr.
Seite 1 von 2  1 2      

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