AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

EStackOverflow

Ein Thema von MasterC · begonnen am 13. Mai 2004 · letzter Beitrag vom 13. Mai 2004
Antwort Antwort
MasterC

Registriert seit: 9. Jan 2004
Ort: Krefeld
369 Beiträge
 
Delphi 2005 Personal
 
#1

EStackOverflow

  Alt 13. Mai 2004, 19:10
Hi, habe ein komisches Problem:

Dieser Code ist im OnClick Ereignis:

Delphi-Quellcode:
  If useactlinecolor.Checked then begin
    useactlinecolor.Checked := false;
    colorbox.Enabled := false; end
  else begin
    useactlinecolor.Checked := true;
    colorbox.Enabled := true;
  end;
verursacht folgendes:

Code:
Im Projekt BlitzEdit.exe ist eine Exception der Klasse EStackOverflow aufgetreten. Meldung: 'Stack-Überlauf'. Prozess wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.
MfG ganxta.
Christian H.
www.Future-Coding.de
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#2

Re: EStackOverflow

  Alt 13. Mai 2004, 19:19
Hi,

Ich nehme an du hast den Code im OnChange von "useactlinecolor".

Wenn du dort "Checked" setzt dann wird sofort wieder "OnChange" aufgerufen und du landest in einer Endlosschleife bis es zum Stacküberlauf kommt!

Lösung:

Globale Variable (im private Abschnitt des Forms): FUpdating: Boolean;

Der Code sieht dann so aus:
Delphi-Quellcode:
if not FUpdating then
begin
  FUpdating := True;
  try
    // EDIT: So gehts besser:
    UseActLineColor.Checked := not UseActLineColor.Checked;
    ColorBox.Enalbed := UseActLineColor.Checked;
  finally
    FUpdating := False;
  end;
end;
Der Clou: Während FUpdating = True ist, wird dieser Block nicht ausgeführt und somit kommt es zu keiner Endlosschleife.


Ich hoffe, ich habe deine Problem richtig erkannt und gelöst. ^^

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Antwort Antwort


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 05:01 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