Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.23;
Скачать: CL | DM;

Вниз

Индекс элемента   Найти похожие ветки 

 
LDE ©   (2003-10-09 10:12) [0]

Привет всем!

Помогите разобраться с таким вопросом!

Нужно при нажатии на кнопку определять номер (индекс) того RadioButton"а (RadioButton1 или RadioButton2 и т.д.), у которого свойство Checked = True.

Заранее спасибо.


 
Семен Сорокин ©   (2003-10-09 10:16) [1]

один из вариантов:
раздай каждому Tag"у RadioButton"а индексы, сделай переменную myIndex, на onClick RadioButton"а поставь
myIndex := TRadioButton(Sender).Tag


 
TUser ©   (2003-10-09 10:22) [2]

Напиши всем RadioButton"ам в Object Inspector"е свойство tag. (RadioButtonX.Tag:=X). OnClick у всех, я так понимаю, один и тот же. Там надо написать (Sender as ТКакой-тоПредок).Tag.


 
LDE ©   (2003-10-10 13:09) [3]

Если я правильно понял, то код должен быть примерно такой:

procedure TForm1.Button1Click(Sender: TObject);
begin
myIndex := TRadioButton(Sender).Tag;
Label1.Caption := IntToStr(myIndex);
end;

Не работает! Значение всегда равно 0! Даже если делать проверку на свойство Checked (через Controls или иначе).


 
Семен Сорокин ©   (2003-10-10 14:08) [4]

LDE © (10.10.03 13:09) [3]
в IDE найди в ObjectInspectore св-во Tag для RadioButton1..n и задай его равным 1..n


 
clickmaker ©   (2003-10-10 14:22) [5]

Есть еще такой компонент - TRadioGroup...


 
Владислав ©   (2003-10-10 14:39) [6]

> LDE © (10.10.03 13:09) [3]

Неправильно понял.

В твоем коде Sender это TRadioButton, а TButton. Поэтому и Tag всегда 0.

Ты можешь пробежаться по всем TRadioButton и проверить свойство Checked.



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

Текущий архив: 2003.10.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.023 c
14-74420
Дубинин Алексей
2003-10-03 21:16
2003.10.23
Ошибка


3-74043
MadSliMX
2003-10-01 13:36
2003.10.23
Delphi + MySQL


1-74154
stasys
2003-10-10 16:31
2003.10.23
Проблема с локализацией CLX MessageDlg.


7-74510
suric
2003-08-06 14:26
2003.10.23
Программирование USB под Win32


6-74349
Finger
2003-08-26 11:24
2003.10.23
Сетевая плата