Какой переключатель устанавливается в TRadioGroup?

Как Вы видите в моей истории вопроса, я разрабатываю менеджера по электронной книге, который будет открытым исходным кодом, и я выпущу его приблизительно через 10 дней, но у меня есть a TRadioGroup, поскольку Вы видите:
TRadioGroup, используемый на моей форме http://img85.imageshack.us/img85/1830/radiogroup.png

И я хочу сохранить somethings в переменной (который должен быть a Integer) это будет "связано" с этим TRadioGroup.

Я должен сделать a if функционируйте как это:

Подпись TRadioButton-> Число, которое должно будет быть сохранено в переменной

Соответствие 2xWidth - Значение по умолчанию-> 0
Соответствие 2xHeight-> 1
Пригодная Ширина-> 2
Пригодная Высота-> 3

Но я просто использовал a TRadioGroup и a TRadioButton одно время, отличающееся, чем в C#, который я использовал больше чем 20 раз. Затем я хочу знать то, что я должен поставить, если функция, потому что, что она сделает, я уже знаю, как сделать:

var
  num: Integer;

begin
  if(TRadioButton1 checked?)
  begin
    num := 0;
  end;
end.

Что я должен вставить скобки if функция?

PS: я собираюсь поместить кредиты в программу для людей, которые помогли мне в этом небольшом проекте.

7
задан Rob Kennedy 31 December 2009 в 19:10
поделиться

1 ответ

У TRadioButton есть свойство Checked. Но TRadioGroup имеет свойство ItemIndex.

Элементы в TRadioGroup хранятся с помощью TStrings. Таким образом, вы можете связать объект с каждой опцией и привести целое число к хранимому объекту TObject.

Пример:

// fill the radiogroup
radiogroup.Items.AddObject('Fit 2xWidth', TObject(0));
radiogroup.Items.AddObject('Fit 2xHeight', TObject(1));
radiogroup.Items.AddObject('Fit Width', TObject(2));
radiogroup.Items.AddObject('Fit Height', TObject(3));
radiogroup.ItemIndex := 0;

Чтобы прочитать текущую установку:

value := radiogroup.ItemIndex;

Или чтобы получить связанное с ней целое число:

index := radiogroup.ItemIndex;
Assert(index>=0); // Sanity check
value := Integer(radiogroup.Items.Objects[index]);

В вашем случае, значения от 0 до 3, поэтому вы можете использовать ItemIndex.

В качестве примечания, если это не функция. Функция - это часть кода, которая возвращает значение, основанное на входных параметрах. Если это оператор, который является командой, которая может быть выполнена. Оператор if является специальным, поскольку позволяет выполнить другой оператор, основанный на условии if.

.
10
ответ дан 6 December 2019 в 14:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: