给一个VCL定义了一个属性,在设计环境下改变属性,VCL没有反映?
给一个VCL定义了一个属性,
property BackColor:TColor Read FBackColor Write SetBackColor;
procedure TMyControl.SetBackColor(Val:TColor);
begin
FBackColor:=Val;
DrawBackColor; //填充组件的背景。
end;
可是在使用这个VCL的时候发现一个问题,改变这个属性,VCl的颜色的颜色确实已经变了,VCL的属性列表中的backColor属性仍是原来的,编译程序,程序运行起来时,VCL的颜色仍然是原来的。 必须在设置了属性BackColor之后,再拉动一下VCL(调整一下尺寸),启动以后的VCL才是新的颜色。
是不是我短了一句话,来通知VCL,属性已经改变,就象VB中 PropertyChanged一样。