Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Programm über 2 Formulare beenden...
kaskus - Mi 31.01.07 18:16
Titel: Programm über 2 Formulare beenden...
hallo
folgende frage:
habe insgesamt 4 formulare..
in 2 von 4 formulare ist ein button mit der funktion alles zu beenden (hardware anbindung und Programm selbst)
in dem hauptformular (Namen) ist ein edit feld für namenseingabe und zwei buttons. einmal ok für übernahme des namens und ein beendenclick. in dem zweiten formular (das spiel selbst) ist auch ein menuiten beenden. die prozedure ist an sich die selbe nur dass die in unterschiedlichen formularen steht. um das programm zu beenden, soll man zwei möglichkeiten haben. die eine ist, über das formular namen und über das formular speedkicker. in namen formular funktionierts einwandfrei, aber nicht in dem formular speedkicker.
habe versucht die prozedure procedure "TSpeedkicker.BeendenClick(Sender: TObject);" mit der prozderure vom hauptformular (Namen) zu verbinden. doch das bekomm ich nicht auf die reihe und die gleiche prozedure in speedkicker macht nicht das was es machen soll! der "versteckt" zwar das formular aber in delphi steht noch, dass der debugger läuft und kanns dann erst wieder über start > Programm zurücksetzen beenden.
Vielen Dank im voraus für eure Hilfe!
Regan - Mi 31.01.07 18:39
Du musst das Hauptformular schließen.
Also:
Delphi-Quelltext
1: 2: 3: 4:
| procedure TSpeedkicker.BeendenClick(Sender: TObject); begin Namen.close; end; |
kaskus - Do 01.02.07 09:17
ja aber wenn ich das hauptformular beende, wird ja nicht wirklich das komplette programm beendet, oder?!
jasocul - Do 01.02.07 09:42
Wenn Du nicht irgendwelche Absonderlichkeiten programmiert hast, dann sollte dadurch das ganze Programm beendet werden.
kaskus - Do 01.02.07 09:49
leider wird das programm nicht komplett beendet....
Delphi-Quelltext
1: 2: 3: 4: 5:
| procedure TSpeedkicker.BeendenClick(Sender: TObject); begin CloseDevice; close;; end; |
wie meinst du das mit Absonderlichkeiten!?
irgendwann ist immer das erste mal....
jasocul - Do 01.02.07 10:08
Die "Absonderlichkeiten" können sehr vielfältig sein. Da jetzt Beispiele zu nennen, wird nicht allzuviel bringen.
Wenn ich Dein Source-Beispiel sehe, fällt mir aber sofort ein Fehler auf. Dazu ein Beispiel:
Angenommen, das Hauptformular heißt "MainForm" und das Formular, von dem aus geschlossen werden soll, heißt "SubForm", dann muss der Aufruf so aussehen:
Delphi-Quelltext
1: 2: 3: 4: 5:
| procedure TSubForm.BeendenClick(Sender: TObject); begin CloseDevice; MainForm.close; end; |
Ein einfaches "Close" schließt nur die Form, zu der das Close gehört.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!