关于在bibtn.mousemove中改变bmp(30分)

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

lsyhql

Unregistered / Unconfirmed
GUEST, unregistred user!
我想在窗体中,
procedure bibtn.mousemove
begin
bibtn1.glyph:=aa.bmp;
end;

procedure form1.mousemove
begin
bibtn1.Glyph:=bb.bmp;
上述语句是否有错。bmp格式如何定义?
另外,指定在某一路径中的图象(例如:c:/rsk/bmp/aa.bmp),应如何
当该软件安装到别的机子上用时,aa.bmp和bb.bmp文件应放在哪里,或者在程序中如何编写,
 
bibtn1.Glyph.loadfromFile('bb.bmp');

如果在可执行文件目录下,可以不写路径,否则要 写完整路径
 
捕捉Image.OnmOUSSEENTER,ONMOUSELEAVE就行了。
在它们中切换图片
 
procedure CMMouseEnter(var Message: TMessage); message CM_MOUSEENTER;
procedure CMMouseLeave(var Message: TMessage); message CM_MOUSELEAVE;

就行了
 
另外,指定在某一路径中的图象(例如:c:/rsk/bmp/aa.bmp),应如何
当该软件安装到别的机子上用时,aa.bmp和bb.bmp文件应放在哪里,或者在程序中如何编写,
答:放在同样的路径或者做成资源文件调用就好了。
procedure bibtn.mousemove
begin
bibtn1.Glyph.loadfromFile('aa.bmp');
end;

procedure form1.mousemove
begin
bibtn1.Glyph.loadfromFile('bb.bmp');
end;
 
to D影子D:
我发现按您的方法来做的话,
在运行时,当鼠标在按钮上来回移动时,该图片不停的闪动,有没有什么方法改进一下?
 
根據D影子D老兄的改一下:
var flag:boolean=false;
procedure bibtn.mousemove
begin
if not flag then
begin
bibtn1.Glyph.loadfromFile('aa.bmp');
flag:=false;
end;
end;

procedure form1.mousemove
begin
if flag then
begin
bibtn1.Glyph.loadfromFile('bb.bmp');
flag:=false;
end;
end;
 
接受答案,谢谢各位!
 
后退
顶部