F
formater
Unregistered / Unconfirmed
GUEST, unregistred user!
要求:动态生成一个GroupBox,在GroupBox里头用TextOut输出文字,我的Code如下:
procedure TForm1.Button1Click(Sender: TObject);
var
dc:hdc;
groupbox1:tgroupbox;
a:tcanvas;
begin
a:=tcanvas.Create;
groupbox1:=tgroupbox.Create(self);
groupbox1.Parent:=self;
groupbox1.SetBounds(10,10,100,100);
groupbox1.Show;
dc:=getdc(groupbox1.Handle);
a.Handle:=dc;
a.Brush.Style:=bsClear;
a.TextOut(30,40,'3333');
a.Free;
end;
结果:只能显示GroupBox,一个字都没显示,但是也没提示错误。
说明:如果GroupBox不是动态生成,而是直接从控件板里拉下来,则可以正确显示。
procedure TForm1.Button1Click(Sender: TObject);
var
dc:hdc;
groupbox1:tgroupbox;
a:tcanvas;
begin
a:=tcanvas.Create;
groupbox1:=tgroupbox.Create(self);
groupbox1.Parent:=self;
groupbox1.SetBounds(10,10,100,100);
groupbox1.Show;
dc:=getdc(groupbox1.Handle);
a.Handle:=dc;
a.Brush.Style:=bsClear;
a.TextOut(30,40,'3333');
a.Free;
end;
结果:只能显示GroupBox,一个字都没显示,但是也没提示错误。
说明:如果GroupBox不是动态生成,而是直接从控件板里拉下来,则可以正确显示。