Форум: "Основная";
Текущий архив: 2004.07.04;
Скачать: [xml.tar.bz2];
Вниз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 вся ветка
Форум: "Основная";
Текущий архив: 2004.07.04;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.032 c