【发布时间】:2019-12-04 13:47:59
【问题描述】:
我在Form2 上有一些TRadioButtons,并使用此代码从Form1 调用Form2:
procedure TForm1.btnCallForm2Click(Sender:TObject);
begin
Form2.RadioButton2.Checked:= true;
Form2.ShowModal;
end;
如果用户点击btnCallForm2,将显示Form2,然后用户点击RadioButton3并关闭表单,然后再次点击btnCallForm2重新打开它。
现在Form2 再次显示,但RadioButton3 被选中而不是RadioButton2。
问:这是什么行为,是错误吗?如何设置检查我想要的RadioButton而不是用户在上一轮选择的内容?
【问题讨论】:
-
这不是错误。您只是将
Caption与当前的Caption和控件名称连接起来。只写Caption := (Sender as TComponent).Name; -
Caption是指表单标题,与Form1.Caption或Self.Caption相同。当您写Caption:= Caption时,这意味着 prevForm.Caption+(Sender as TComponent).Name。所以@TLama 已经说过使用Caption := (Sender as TComponent).Name;而不是Caption:= Caption + (Sender as TComponent).Name; -
@TLama,问题不在于标题(尽管它在 btnCallForm2Click 中的 ShowModal 之前已被清除)。我不想被选中的是 RadioButton。
-
@Sami,带有 Caption 我只想告诉你 RadioButton 被选中了两次。
标签: delphi radio-button