设计期导入图片问题!vcl70.bpl报错
问题是设计期导入图片时出错,错误信息:Access violation of adress007a6d9f in module 'vcl70.bpl'.Read of Adress 00001a1b
但是如果动态创建,就没有问题。
constructor TBtn9.Create(AOwner: TComponent); //创建,设置各项属性
var
map:TBitmap;
begin
inherited;
Fpic :=TBitmap.Create;
ControlStyle :=ControlStyle+[csOpaque];
Cursor :=crHandPoint;
Height :=30;
width :=60;
FAlignment :=tjLeft;
FPicTop :=1;
FPicLeft :=1;
end;
procedure TBtn9.SetPic(const Value: TBitmap);//取图片,相当于glyph只是换了个位置
begin
if(FPic<>nil)then FPic.Destroy;
FPic:=Value;
Invalidate();
end;
procedure TBtn9.Paint;
var
TextRect1,BmpRect:TRect;
Bmp1:TBitmap;
begin
inherited;
if(FPic<>nil)then
Canvas.Draw(FPicLeft,FPicTop,FPic);//画图片
TextRect1:=Rect(FPic.Width+FTextLeft,FTextTop,self.ClientWidth-FTextLeft,(self.ClientHeight div 2)-FTextTop);
DrawText(Canvas.Handle,PChar(FText),length(FText),TextRect1,Flags[FAlignment]);//画text1
TextRect1:=Rect(FPic.Width+FTextLeft,(self.ClientHeight div 2)+FTextTop,self.ClientWidth-FTextLeft,self.ClientHeight-FTextTop);
DrawText(Canvas.Handle,PChar(FText1),length(FText1),TextRect1,Flags[FAlignment]);//画text2
我需要的大概就是:
---------------
| | caption:如CSDN |
| 图片 |------------------
| | text:如连接成功 |
----------------------------
这样的效果