一个TRZcheckbox的BUG的,求解,郁闷
if RZChk_15.Checked then RZChk_21.Checked :=true
else
RZChk_21.Checked :=False ;
我上面这样写的结果是两个checkbox的状态相反,很郁闷,不知道为什么,求解
[解决办法]
RZChk_15与RZChk21是不是2选1 ?
应该是RZChk_21和RZChk_15的Click事件,都设置了对方的状态
[解决办法]
不带这么玩的。打了半天字回复时没了。。。
用这段代码延迟改变另一个复选框的值。排除一下当前复选框事件激活时其值未更新的可能。
我没装你说的那套控件,用普通控件代替了。你改一下在测试吧
unit Unit2;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;type TForm2 = class(TForm) chk1: TCheckBox; chk2: TCheckBox; tmr1: TTimer; tmr2: TTimer; procedure FormCreate(Sender: TObject); procedure chk1Click(Sender: TObject); procedure chk2Click(Sender: TObject); procedure tmr1Timer(Sender: TObject); procedure tmr2Timer(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form2: TForm2;implementation{$R *.dfm}procedure TForm2.chk1Click(Sender: TObject);begin tmr1.Enabled := True;end;procedure TForm2.chk2Click(Sender: TObject);begin tmr2.Enabled := True;end;procedure TForm2.FormCreate(Sender: TObject);begin tmr1.Enabled := False; tmr2.Enabled := False; tmr1.Interval := 5000; tmr2.Interval := 5000;end;procedure TForm2.tmr1Timer(Sender: TObject);begin chk2.Checked := chk1.Checked; tmr1.Enabled := False;end;procedure TForm2.tmr2Timer(Sender: TObject);begin chk1.Checked := chk2.Checked; tmr2.Enabled := False;end;end.