Einzelnen Beitrag anzeigen

Michael II

Registriert seit: 1. Dez 2012
Ort: CH BE Eriswil
760 Beiträge
 
Delphi 11 Alexandria
 
#15

AW: RadioButton seltsames Verhalten

  Alt 26. Apr 2017, 18:50
Hallo Wendelin

danke für dein Minimalprojekt.

Ich kann das von dir beschriebene Verhalten für XE6 bestätigen.

Wie du beschreibst:
1a. u2 - rb => r2 checked - ich klick auf form 1 => radio 1 checked [nicht gut]
1b. u2 - rb => r2 checked - f2 schliessen => radio 1 checked [nicht gut]

Wenn du zuerst RadioButton2 klickst und dann 1a oder 1b ausführst, dann bleibt RadioButton2 wie erwartet aktiv:
2a. r2 checken - u2 - rb - r2 checked - ich klick auf form 1 => radio 2 bleibt aktiv [gut]
2b. r2 checken - u2 - rb => r2 checked - f2 schliessen => radio 2 bleibt aktiv [gut]


Ich empfehle dir diesen Workaround:
Füge in unit1 für Form1 hinzu:
Delphi-Quellcode:
procedure TForm1.RadioButton1Click(Sender: TObject);
begin
  RadioButton1.SetFocus;
end;

procedure TForm1.RadioButton2Click(Sender: TObject);
begin
  RadioButton2.SetFocus;
end;
Ändere in unit2 für Form 2:

Delphi-Quellcode:
procedure TForm2.SpeedButton2Click(Sender: TObject);
begin
  Form1.RadioButton2Click( self ); // NEU
  // Form1.RadioButton2.Checked := True; // BISHER
end;

In XE6 funktioniert es so - ich habe gerade keine Zeit für Tests in Delphi 7.

NEU
1a. u2 - rb => r2 checked - ich klick auf form 1 => radio 2 checked [gut]
1b. u2 - rb => r2 checked - f2 schliessen => radio 2 checked [gut]

Ich hoffe es funktioniert auch bei dir.

Gruss
Michael
Michael Gasser
  Mit Zitat antworten Zitat