Вниз
Скачать: CL | DM;

RadioButtons as RadioGroup   Найти похожие ветки 

← →
Andrey V. ©   (2004-06-22 07:36) [0]

Как научить отдельные RadioButton на форме работать как элементы RadioGroup, т.е. в состоянии Checked должен быть только один RadioButton. Когда у меня на форме было N RadioButtonов все было хорошо. Но когда я поместил PageControl и раскидал RadioButtonы по страницам, все поломалось - при отмечании одного батона на одной странице, на других страницах появлялись по одному отмеченному RadioButtonу. Как красиво решить проблему ?


← →
TUser ©   (2004-06-22 09:45) [1]

const
  maxRB = 10;

type
  TForm1 = class(TForm)
     RadioButton1:TRadioButton;
     RadioButton2:TRadioButton;
     ...
     RadioButton10:TRadioButton;
  ...

procedure TForm1.RadioButton1Click(Sender:TObject);
var i:integer;
   c:boolean;
begin
  c:=not (Sender as TRadioButton).Checked;
  for i:=1 to maxRB do
     (FindComponent("RadioButton"+inttostr(i)) as TRadioButton).Checked:=c;      
end;


← →
Andrey V. ©   (2004-06-22 11:26) [2]

При таком раскладе он НИКОГДА не будет Checked.


← →
jack128 ©   (2004-06-22 11:34) [3]

размести все радиобаттоны одной группы как одном TGroupBox, или на панелях..


← →
Andrey V. ©   (2004-06-22 12:02) [4]

Положу на панели.
Придется в каждом клике делать Checked:=False для тех у кого Парент другой ...


← →
TUser ©   (2004-06-22 12:49) [5]

2 2
Ну, извини
 for i:=1 to maxRB do begin
     LocalRB:=(FindComponent("RadioButton"+inttostr(i)) as TRadioButton);
     if LocalRB <> Sender then
        LocalRB.Checked:=c;  
     end;


← →
Andrey V. ©   (2004-06-22 14:44) [6]

> TUser ©   (22.06.04 12:49) [5]
Если часть RadioButtonов лежит на одном TabSheetе , а часть на другом , то это сработает только если под них подсунуть панели.

В любом случае спасибо вам и jack128.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.033 c
3-1086033673
MOTOR
2004-06-01 00:01
2004.07.04
Как узнать что база пуста


1-1087724570
killer
2004-06-20 13:42
2004.07.04
Меню состоящее из одних изображений?


3-1084022161
xoluay
2004-05-08 17:16
2004.07.04
сохранение базы


3-1086768382
Ratiborr
2004-06-09 12:06
2004.07.04
Автоинкрементное поле


9-1080097691
LUCIFER (rh ZAROLF)
2004-03-24 06:08
2004.07.04
2D RPG - касательно спрайтов.




   Наверх