数学建模社区-数学中国

标题: Form->Canvas->TextOut与Label->Caption的区别 [打印本页]

作者: 小菜菜同学    时间: 2005-4-29 10:35
标题: Form->Canvas->TextOut与Label->Caption的区别
<>Form1-&gt;Canvas-&gt;TextOut与Label1-&gt;Caption在坐标上的区别</P>. s/ Y0 c$ I$ ~* S% s& U
<>前者在LEFT〈100,TOP〈100左右,时反映的不是真的坐标,不知道怎么回事?</P>2 U- }/ j+ B: Q* [
<>如String str="";1 U2 L8 V( j5 t) `- B
str=str+"x="+IntToStr(X)+"  "+"y="+IntToStr(Y);
2 X, e  J- ?' DForm1-&gt;Canvas-&gt;TextOut(20,20,str);; ^4 [" K( `/ ^* i2 U* b
Label1-&gt;Caption="x="+IntToStr(X)+"  "+"y="+IntToStr(Y);</P>
6 `" W& Z9 \3 N" Q) u9 [7 o' M$ t. L<>两者LEFT〈100,TOP〈100左右,数值不一样。且若没有第四行,第二行写成str=str+"x="+X+"  "+"y="+Y;也可。不知道什么原因?</P>[em06][em06]: s6 x% E4 m! [/ e! ]
[此贴子已经被作者于2005-4-29 10:36:51编辑过]

作者: ilikenba    时间: 2005-4-29 10:52
这里的变量X,Y是什么意思?
作者: 小菜菜同学    时间: 2005-4-29 11:01
呵呵,没写清楚,是鼠标的坐标。(MouseMove)
作者: ilikenba    时间: 2005-4-29 11:26
<>Note: TextOut does not erase the background before writing Text. To erase the background first, use the FillRect method.</P><>上面是TextOut的一个注释!意思是TextOut方法在写之前是不能自动清除背景的!为了清除需要使用FillRect方法!所以可以将代码改成:</P><>String str="";
) D& z6 G1 P7 ]. E4 Astr=str+"x="+IntToStr(X)+"  "+"y="+IntToStr(Y);1 @8 W  t- @& R8 c1 o+ j
Form1-&gt;Canvas-&gt;FillRect(Rect(0,0,100,100));! X  R% P: j( P! R5 I6 }8 p8 f, q/ v
Form1-&gt;Canvas-&gt;TextOut(20,20,str);
2 M3 m9 ^* \0 iLabel1-&gt;Caption="x="+IntToStr(X)+"  "+"y="+IntToStr(Y);</P><>这样就没有问题了!</P>
作者: 小菜菜同学    时间: 2005-4-29 11:52
<>Form1-&gt;Canvas-&gt;FillRect(Rect(0,0,100,100));</P><>是清除(0,0),(100,100)的屏幕吗?</P>
作者: ilikenba    时间: 2005-4-29 11:59
对!我这里只是随便写的大小,你可以改一下!




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5