gpt4 book ai didi

delphi - 在 TRadioGroup 中选择了哪个单选按钮?

转载 作者:行者123 更新时间:2023-12-03 14:46:15 26 4
gpt4 key购买 nike

正如您在我的问题历史记录中看到的,我正在开发一个电子书管理器,它将是开源的,我将在大约 10 天后发布它,但我有一个 TRadioGroup,如你可以看到:
TRadioGroup Used On My Form http://img85.imageshack.us/img85/1830/radiogroup.png

我想将一些东西存储在一个变量中(需要是一个整数),该变量将与这个TRadioGroup“链接”。

我需要执行一个 if 函数,如下所示:

Caption Of The TRadioButton -> Number that will need to be stored in the variable

Fit 2xWidth - Default -> 0
Fit 2xHeight -> 1
Fit Width -> 2
Fit Height -> 3

但我只使用了 TRadioGroupTRadioButton 一次,这与我在 C# 中使用过 20 多次不同。然后我想知道我需要在 if 函数上添加什么,因为它会做什么我已经知道该怎么做:

var
num: Integer;

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

我需要在 if 函数的括号内放入什么?

PS:我将把积分归功于在这个小项目中帮助过我的人们。

最佳答案

TRadioButton 具有 Checked 属性。但 TRadioGroup 具有 ItemIndex 属性。

TRadioGroup 中的项目使用 TString 存储。因此,您可以将一个对象与每个选项关联起来,并且可以将一个整数转换为要存储的 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是一条语句,是一条可以执行的命令。 if 语句很特殊,因为它使您能够根据 if 条件执行不同的语句。

关于delphi - 在 TRadioGroup 中选择了哪个单选按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1986246/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com