小问题,请帮忙(100分)

  • 主题发起人 主题发起人 lifencheng
  • 开始时间 开始时间
L

lifencheng

Unregistered / Unconfirmed
GUEST, unregistred user!
var BtnL, BtnT: Integer;<br>OldBkMode : integer;<br>begin<br>//加载资源,<br>&nbsp; &nbsp;if FBIG then<br>&nbsp; begin<br>&nbsp; upbmp.LoadFromResourceName(HInstance,'BIGUP');<br>&nbsp; Downbmp.LoadFromResourceName(HInstance,'BIGDOWN');<br>&nbsp; end<br>&nbsp; else<br>&nbsp; begin<br>&nbsp; upbmp.LoadFromResourceName(HInstance,'SMALLUP');<br>&nbsp; Downbmp.LoadFromResourceName(HInstance,'SMALLDOWN');<br>&nbsp; end;<br>//在图片上输出字符<br>&nbsp; &nbsp; upbmp.Canvas.Font:=font;<br>&nbsp; &nbsp; BtnT:=(Height-upbmp.Canvas.TextHeight(Caption)) div 2;<br>&nbsp; &nbsp; BtnL:=(Width-upbmp.Canvas.TextWidth(Caption)) div 2;<br>&nbsp; &nbsp; OldBkMode := SetBkMode(upbmp.Canvas.Handle, 1);<br>&nbsp; &nbsp; if not Enabled then<br>&nbsp; &nbsp; upbmp.Canvas.Font.Color:=clSilver;<br>&nbsp; &nbsp; upbmp.Canvas.TextOut(BtnL,BtnT,caption);<br>&nbsp; &nbsp; SetBkMode(upbmp.Canvas.Handle,OldBkMode);<br>&nbsp; &nbsp; downbmp.Canvas.Font:=font;<br>&nbsp; &nbsp; BtnT:=(Height-downbmp.Canvas.TextHeight(Caption)) div 2+2;<br>&nbsp; &nbsp; BtnL:=(Width-downbmp.Canvas.TextWidth(Caption)) div 2+2;<br>&nbsp; &nbsp; OldBkMode := SetBkMode(downbmp.Canvas.Handle, 1);<br>&nbsp; &nbsp; downbmp.Canvas.TextOut(BtnL,BtnT,caption);<br>&nbsp; &nbsp; SetBkMode(downbmp.Canvas.Handle,OldBkMode);<br>end;<br>这段代码在2000下可正常,在98下则不能在downbmp上输出字符??????<br>注意:在USES中不能加入windows,否则与我的代码有冲突。不能使用透明色用做<br>SERBKMODE中的1参数原是'T....'的常数,但我不知定义在哪个类中,请指教..
 
现在谁进来就给分,我自行解决了
 
我也来了<br>
 
多人接受答案了。
 
后退
顶部