我的radiogroup中有五个项,在某些条件下,我只想让其中几项可选,也就是让其他的enable=false,该如何实现,在线等
解决方案 »
- 求delphi中SQL语句带参数的Like写法
- 多窗口问题求助
- Delphi对VC的调用。。。
- 怎样实现这个功能:delphi中把 *.mdb 中的表的所有纪录导出为文本文件,不要一条 一条的导。那样太慢了,又没有其他方法呀?谢谢哦
- 如何获得rave里打印的总页数
- 有关动态连接库的简单问题
- 提供短信设备2次开发接口 短信群发网关接口
- 不用dbedit,如何写代码,将edit文本框中内容存库?
- 大哥!! 我的可用分没有了怎么办!!!
- 如何循环控制多个Button?
- 用webbrowser检测出IE的版本是4.0的,怎么能够用到操作系统自带的IE内核啊,我的电脑都已经最新了
- 求助关于delphi hook send后修改buf的问题
if condition=1 then
begin
radiobutton1.enable=false;
end
else if condition=2 then
begin
radiobutton2.enable=false;
end
else if condition=3 then
begin
radiobutton3.enable=false;
end
.
.
.
.
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls;type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Button5: TButton;
RadioGroup1: TRadioGroup;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioButton3: TRadioButton;
RadioButton4: TRadioButton;
RadioButton5: TRadioButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
private
Fcondition:integer;
procedure setcondition(const Value: integer);
{ Private declarations }
public
{ Public declarations }
property check:integer read Fcondition write setcondition;
end;var
Form1: TForm1;implementation{$R *.DFM}procedure TForm1.setcondition(const Value: integer);
begin
if Fcondition <> Value then
begin
Fcondition:=Value;
if Value=1 then
begin
radiobutton1.Enabled:=false;
radiobutton2.Enabled:=true;
radiobutton3.Enabled:=true;
radiobutton4.Enabled:=true;
radiobutton5.Enabled:=true;
end
else if Value=2 then
begin
radiobutton2.Enabled:=false;
radiobutton1.Enabled:=true;
radiobutton3.Enabled:=true;
radiobutton4.Enabled:=true;
radiobutton5.Enabled:=true; end
else if Value=3 then
begin
radiobutton3.Enabled:=false;
radiobutton2.Enabled:=true;
radiobutton1.Enabled:=true;
radiobutton4.Enabled:=true;
radiobutton5.Enabled:=true;
end
else if Value=4 then
begin
radiobutton4.Enabled:=false;
radiobutton1.Enabled:=true;
radiobutton2.Enabled:=true;
radiobutton3.Enabled:=true;
radiobutton5.Enabled:=true; end
else if Value=5 then
begin
radiobutton5.Enabled:=false;
radiobutton1.Enabled:=true;
radiobutton2.Enabled:=true;
radiobutton3.Enabled:=true;
radiobutton4.Enabled:=true;
end;
end;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
check:=1;
end;procedure TForm1.Button2Click(Sender: TObject);
begin
check:=2;
end;procedure TForm1.Button3Click(Sender: TObject);
begin
check:=3;
end;procedure TForm1.Button4Click(Sender: TObject);
begin
check:=4;
end;procedure TForm1.Button5Click(Sender: TObject);
begin
check:=5;
end;end.
begin
//在RadioGroup1上没有其它控件的情况下使用,如果有其它控件的话,还要作下判断
(RadioGroup1.Controls[1] as TRadioButton).Enabled:=false;//禁止第二个
(RadioGroup1.Controls[2] as TRadioButton).Enabled:=false;//禁止第三个
end;
//更通用一点的可以这样
procedure TForm1.SetEnalbed(index: integer; Enabled: boolean);
begin
(RadioGroup1.Controls[index] as TRadioButton).Enabled:=Enabled;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
//这里你可以加条件判断,应该让哪个禁止或使能,
//我这里只简单举了个例子
SetEnalbed(1,false);
SetEnalbed(2,false);
end;