W
wei0916
Unregistered / Unconfirmed
GUEST, unregistred user!
各位帮帮忙,我的本意是在窗体上用TEXTOUT输出一个透明的字符串.但以下这个过程在窗体上输出的字符串长度不够,只有一半出现在屏幕上.看看是哪里的原因?
procedure TForm1.FormCreate(Sender: TObject);
var Lpfont,Mydc,Oldfont,Myrgn:longint;
begin
Lpfont:=CreateFont(32,32,0,0,0,0,0,0,0,0,0,0,0,'宋体');//创建字体
Mydc:=GetDc(Form1.Handle);//取DC
SetbkMode(Mydc,1);//背景
BeginPath(Mydc);
Oldfont:=SelectObject(Mydc,Lpfont);//代换字体
TextOut(Mydc,0,0 ,pchar('中国人民工中国是非功过'),4);
TextOut(Mydc,0,35,pchar('中国人民是伟大的人民正直'),4);
SelectObject(Mydc,Oldfont);
EndPath(Mydc);
Myrgn:=PathtoRegion(Mydc);
SetWindowRgn(Form1.Handle ,myRgn,true);
Form1.Top :=0;
Form1.Left :=0;
效果是有一点,但是不能将上面的文字全部输出,这倒底是怎么回事呢,各位帮一下忙.谢了.
end;
procedure TForm1.FormCreate(Sender: TObject);
var Lpfont,Mydc,Oldfont,Myrgn:longint;
begin
Lpfont:=CreateFont(32,32,0,0,0,0,0,0,0,0,0,0,0,'宋体');//创建字体
Mydc:=GetDc(Form1.Handle);//取DC
SetbkMode(Mydc,1);//背景
BeginPath(Mydc);
Oldfont:=SelectObject(Mydc,Lpfont);//代换字体
TextOut(Mydc,0,0 ,pchar('中国人民工中国是非功过'),4);
TextOut(Mydc,0,35,pchar('中国人民是伟大的人民正直'),4);
SelectObject(Mydc,Oldfont);
EndPath(Mydc);
Myrgn:=PathtoRegion(Mydc);
SetWindowRgn(Form1.Handle ,myRgn,true);
Form1.Top :=0;
Form1.Left :=0;
效果是有一点,但是不能将上面的文字全部输出,这倒底是怎么回事呢,各位帮一下忙.谢了.
end;