Einzelnen Beitrag anzeigen

Benutzerbild von sx2008
sx2008

Registriert seit: 16. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#3

Re: Debugging: Variablenwerte ständig überwachen

  Alt 29. Jun 2008, 15:22
Man kann ja nur globale Variablen ständig überwachen. *)
Und was soll man mit globalen Variablen tun?? - Richtig, vermeiden wann immer es geht!!
Nehmen wir mal an, du hast eine Variable namens Status auf deinem Formular und willst jede Änderung mitbekommen.
Einfacher Trick, man macht aus Status ein Property:
Delphi-Quellcode:
private
  FStatus : integer;

  procedure SetStatus(Value:integer);
  property Status:integer read FStatus write SetStatus;
......
procedure TForm1.SetStatus(Value:integer);
begin
  FStatus := Value;
  Caption := Format('Status=%d', [Value]); // nur zum Debuggen; sonst auskommentieren
end;
Und wenn die Variable so wichtig ist, dass du sie ständig überwachen musst, dann ist es vielleicht eine gute Idee
diese Variable ständig an der Benutzeroberfläche zu präsentieren. In einem TStatusBar kann man einige Infos unterbringen.

*) theoretisch könnte die IDE einen neuen Thread aufmachen und globale Variable alle 0,1s Sekunden mit ReadProcessMemory auslesen
aber das lohnt den Aufwand nicht
  Mit Zitat antworten Zitat