遍历GroupBox1中的子控件 procedure TForm1.Button2Click(Sender: TObject); var i:Integer; begin ListBox1.Items.Clear; ListBox1.Items.Add('开始遍历控件******'); for i:=1 to GroupBox1.ControlCount-1 do begin ListBox1.Items.Add(GroupBox1.Controls[i].Name); if GroupBox1.Controls[i] is TDateTimePicker then ListBox1.Items.Add('时间控件值:' + DateToStr(TDateTimePicker(GroupBox1.Controls[i]).Date)); if GroupBox1.Controls[i] is Tedit then ListBox1.Items.Add('文本框值:'+Tedit(GroupBox1.Controls[i]).text); end; ListBox1.Items.Add('遍历控件结束******'); end; 找了点遍历的代码 我先去试验一下 可以的话 立马给分!
procedure TForm1.RadioGroup1Click(Sender: TObject); begin if RadioGroup1.Tag = 0 then begin RadioGroup1.Tag := 1; end else begin RadioGroup1.Tag := 0; RadioGroup1.ItemIndex :=-1; end; end; 这样可以,不过效果不是特别好,你再想想吧
//我在Form中放了5組TRadioGroup,然後它們的Exit事件都定義為 //procedure TForm1.RadioGroup1Exit(Sender: TObject); //當要取消的時候,只需要將該TRadioGroup的ItemIndex屬性設置為-1即可 var gRadioGroup: TRadioGroup;
procedure TForm1.Button1Click(Sender: TObject); begin gRadioGroup.ItemIndex := -1; end;
procedure TForm1.FormCreate(Sender: TObject); begin gRadioGroup := TRadioGroup.Create(Self); end;
procedure TForm1.FormDestroy(Sender: TObject); begin gRadioGroup.Destroy; end;
procedure TForm1.RadioGroup1Exit(Sender: TObject); begin if Sender is TRadioGroup then gRadioGroup := TRadioGroup(Sender); end; 看另外一个帖子上说这样可以 但我用了怎么就不行呢?
:)
这样就可以啦
procedure TForm1.Button2Click(Sender: TObject);
var
i:Integer;
begin
ListBox1.Items.Clear;
ListBox1.Items.Add('开始遍历控件******');
for i:=1 to GroupBox1.ControlCount-1 do
begin
ListBox1.Items.Add(GroupBox1.Controls[i].Name);
if GroupBox1.Controls[i] is TDateTimePicker then
ListBox1.Items.Add('时间控件值:' + DateToStr(TDateTimePicker(GroupBox1.Controls[i]).Date));
if GroupBox1.Controls[i] is Tedit then
ListBox1.Items.Add('文本框值:'+Tedit(GroupBox1.Controls[i]).text);
end;
ListBox1.Items.Add('遍历控件结束******');
end;
找了点遍历的代码 我先去试验一下 可以的话 立马给分!
begin
if RadioGroup1.Tag = 0 then
begin
RadioGroup1.Tag := 1;
end
else
begin
RadioGroup1.Tag := 0;
RadioGroup1.ItemIndex :=-1;
end;
end;
这样可以,不过效果不是特别好,你再想想吧
只有再点其他选项的时候,才会触发OnClick事件
//我在Form中放了5組TRadioGroup,然後它們的Exit事件都定義為
//procedure TForm1.RadioGroup1Exit(Sender: TObject);
//當要取消的時候,只需要將該TRadioGroup的ItemIndex屬性設置為-1即可
var
gRadioGroup: TRadioGroup;
procedure TForm1.Button1Click(Sender: TObject);
begin
gRadioGroup.ItemIndex := -1;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
gRadioGroup := TRadioGroup.Create(Self);
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
gRadioGroup.Destroy;
end;
procedure TForm1.RadioGroup1Exit(Sender: TObject);
begin
if Sender is TRadioGroup then
gRadioGroup := TRadioGroup(Sender);
end; 看另外一个帖子上说这样可以 但我用了怎么就不行呢?