delphi动态创建组件的颜色

先建两个procedure,一个把label的颜色改为红色,一个把label的颜色变为灰色.
动态创建label的时候调用就可以了。

lb.OnMouseEnter:=mset;
lb.OnMouseLeave:=mslv;

下面是完整代码:

procedure TForm1.mset(Sender:TObject);
begin
  TLabel(Sender).Color:=clRed;
end;

procedure TForm1.mslv(Sender:TObject);
begin
  TLabel(Sender).Color:=clBtnFace;
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
var
  i:integer;
  lb:TLabel;
begin
  for i:=1 to 3 do
  begin
    lb:=TLabel.Create(self);
    lb.Parent :=Panel1;
    lb.Caption :='Label'+inttostr(i);
    lb.Top:=lb.Height*i;
    lb.OnMouseEnter:=mset;
    lb.OnMouseLeave:=mslv
  end;
end; 

posted on 2010-10-27 02:29  Delphi7456  阅读(542)  评论(0编辑  收藏  举报

导航