Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Programm in Startzustand versetzen (https://www.delphipraxis.net/103557-programm-startzustand-versetzen.html)

motivierter 17. Nov 2007 12:25


Programm in Startzustand versetzen
 
Hallo,

gibt es vielleicht ein Befehl in Delphi mit dem ich am Ende einer Prozedur das ganze Programm, mit den ganzen Variablen usw., resete? Denn mein Programm funktioniert nach bestimmten Prozeduren nicht weil Variablen nicht mehr die Werte haben mit denen Prozeduren starten können.


Gruß

scrat1979 17. Nov 2007 12:26

Re: Programm in Startzustand versetzen
 
Hallo!!

Wie wäre es den Debugger/Haltepunkte zu benutzen und den Variablen damit während dem Programmablauf "gültige" Werte zuzuweisen??

SCRaT

Apollonius 17. Nov 2007 12:26

Re: Programm in Startzustand versetzen
 
Einfachste Möglichkeit ist ein Programmneustart. Sonst kannst du höchstens die Anfangswerte speichern und dann eben in deiner Reset-Routine zurücksetzen.

DeddyH 17. Nov 2007 12:34

Re: Programm in Startzustand versetzen
 
Zitat:

Zitat von motivierter
Denn mein Programm funktioniert nach bestimmten Prozeduren nicht weil Variablen nicht mehr die Werte haben mit denen Prozeduren starten können.

Vielleicht solltest Du Dein Programmdesign einmal überdenken.

Reinhard Kern 17. Nov 2007 12:50

Re: Programm in Startzustand versetzen
 
Zitat:

Zitat von motivierter
Hallo,

gibt es vielleicht ein Befehl in Delphi mit dem ich am Ende einer Prozedur das ganze Programm, mit den ganzen Variablen usw., resete? Denn mein Programm funktioniert nach bestimmten Prozeduren nicht weil Variablen nicht mehr die Werte haben mit denen Prozeduren starten können.


Gruß

Hallo,

das ist schlichtweg harte Arbeit - alles, was zur Initialisierung notwendig ist, kommt in entsprechende Init-Prozeduren, und die müssen neu aufgerufen werden. Dabei muss man trennen zwischen Create und Init: Objekte müssen i.d.R. nicht neu angelegt werden, aber neu initialisiert, daher sollte man schon beim Entwurf zwischen Anlegen und Rücksetzen trennen.

Die angenehmen Seiten der VCL verkehren sich dabei ins Gegenteil: auch alles, was im Object Inspector festgelegt wurde, muss entsprechend zurückgesetzt werden. Bei einem rücksetzfähigen Programm sollte man daher von vronherein so arbeiten, als ob es den Object Inspector gar nicht gäbe.

Viel Spass beim Redesign.

Gruss Reinhard

(Übrigens erklärt das, warum man Windows bei Installationen wieder und wieder neu starten muss - ist eben die einfachste Methode um zu einem definierten Ausgangspunkt zu kommen.)


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:45 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