小
小八哥
Unregistered / Unconfirmed
GUEST, unregistred user!
我在一窗体中用到Panel(其中有六个Label),DBText,Label等组件,
想实现的目标是在程序运行过程中当我鼠标点击任一组件时,
该组件颜色变红(Panel与其中的Label看成一个组件)。
当我又点击另一组件时,这时的组件变红,上次点击的组件变回原色。
即在任意时刻只有一个组件的颜色是红色。我的代码如下
for i:=0 to ComponentCount-1 do
begin
if Components.Name=TComponent(Sender).Name
then TLabel(Components).Font.Color:=clred
else if (Components is TLabel) then TLabel(Components).Font.Color:=clBlack;
end;
我这代码是错误的在then TLabel(Components).Font.Color:=clred
这句中我不知用什么类来产生panel,dbtext,label的公有.font.color所以用了TLabel类,
运行发现对Panel无用。
下面这行代码更是不行了, 只有对label有效。
else if (Components is TLabel) then TLabel(Components).Font.Color:=clBlack;
我不知说清了没有,万分疑惑,望指点!
想实现的目标是在程序运行过程中当我鼠标点击任一组件时,
该组件颜色变红(Panel与其中的Label看成一个组件)。
当我又点击另一组件时,这时的组件变红,上次点击的组件变回原色。
即在任意时刻只有一个组件的颜色是红色。我的代码如下
for i:=0 to ComponentCount-1 do
begin
if Components.Name=TComponent(Sender).Name
then TLabel(Components).Font.Color:=clred
else if (Components is TLabel) then TLabel(Components).Font.Color:=clBlack;
end;
我这代码是错误的在then TLabel(Components).Font.Color:=clred
这句中我不知用什么类来产生panel,dbtext,label的公有.font.color所以用了TLabel类,
运行发现对Panel无用。
下面这行代码更是不行了, 只有对label有效。
else if (Components is TLabel) then TLabel(Components).Font.Color:=clBlack;
我不知说清了没有,万分疑惑,望指点!