AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Exception der Klasse EAccessViolation aufgetreten!
Thema durchsuchen
Ansicht
Themen-Optionen

Exception der Klasse EAccessViolation aufgetreten!

Ein Thema von T.E. · begonnen am 31. Jul 2007 · letzter Beitrag vom 31. Jul 2007
 
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#8

Re: Exception der Klasse EAccessViolation aufgetreten!

  Alt 31. Jul 2007, 16:51
Man darf innerhalb einer Klasse nicht auf die globale Instanzvariable (der eigenen Klasse) zugreifen!
Das ist nur ein (aber sehr schwerwiegender) Fehler in deinem Sourcecode.
Delphi-Quellcode:
var
  Startbildschirm: TStartbildschirm;
implementation
procedure TStartbildschirm.StartTimerTimer(Sender: TObject);
begin
  Start.show;
  // FALSCH !!!!!!
  // Wer sagt denn, dass die Variable "Startbildschirm" wirklich auf ein gültiges Objekt zeigt ?
  // Es könnten auch mehrere Objekte der Klasse TStartbildschirm existieren
  // auch dann führt das zu schweren Fehlern
  Startbildschirm.Visible := false;

  // Richtig !
  Visible := false; // eigentlich ganz einfach

// if Start.Visible = true then // Schlecht
  // Richtig: Boolsche Ausdrücke werden direkt verwendet
  // Vergleich mit True kostet mehr Rechenzeit und kann unter bestimmten Umständen
  // zu Fehlern führen
  if Start.Visible then
  begin
    // Startbildschirm.StartTimer.Enabled := false ;
    StartTimer.Enabled := false ; // siehe oben
  end;
end;
Andreas
  Mit Zitat antworten Zitat
 


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 11:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz