AGB  ·  Datenschutz  ·  Impressum  







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

RadioGroup.Itemindex verstellt sich selbst?!?

Ein Thema von Mysticus · begonnen am 6. Dez 2006 · letzter Beitrag vom 5. Mär 2011
 
Mysticus

Registriert seit: 16. Sep 2003
Ort: Gomaringen
13 Beiträge
 
Delphi 2009 Professional
 
#1

RadioGroup.Itemindex verstellt sich selbst?!?

  Alt 6. Dez 2006, 13:54
Hallo,

obwohl ich schon sehr viel mit Delphi und VCL programmiert habe, bin ich heute auf ein Problemchen gestoßen, das sich letztlich schon anhand von nur zwei effektiven Programmzeilen demonstrieren läßt, welche mit aber Rätsel aufgeben, die ich Euch nicht vorenthalten will:

Eine VCL-Anwendung (Delphi 7) mit zwei Formularen; Form1 enthält lediglich einen Button, dessen OnClick-Ereignisfunktion das zweite Formular anzeigt:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  Form2.Show();
end;
Form2 enthält lediglich eine RadioGroup mit den drei Items "A", "B", und "C", deren ItemIndex in der OnShow-Ereignisfunktion auf 0 gesetzt wird:

Delphi-Quellcode:
procedure TForm2.FormShow(Sender: TObject);
begin
  RadioGroup1.ItemIndex := 0;
end;
So, das war's schon. Ich starte nun dieses Progrämmchen, betätige den Button, worauf sich Form2 öffnet. Hier wähle ich in der RadioGroup Item "C" aus und schließe Form2 (durch Click auf das Schließen-Symbol oben rechts) wieder. Wenn ich jetzt den Button erneut betätige, öffnet sich Form 2 wieder und nun kommt das (für mich) Unglaubliche: in der RadioGroupo ist Item "C" selektiert, d.h. der ItemIndex ist 2, obwohl ich ihn in FormShow() explizit auf 0 setze und dieser Code auch tatsächlich durchlaufen wird.

Das Problem tritt im C++-Builder 5 genauso auf.

Anscheinend wird irgendwo in den Tiefen der VCL nach dem Aufruf von FormShow() der RadioGroup1.ItemIndex wieder auf den Wert restauriert, der beim Schließen des Formulars galt. Aber warum, was soll dieses unverständliche "Eigenleben"? Und weiß jemand einen eleganten Weg, den ItemIndex beim erneuten Anzeigen des Formulars dennoch auf einen Startwert zurücksetzen?
  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 04:08 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