speedbutton双击后不弹起问题(100分)

W

wooiguo

Unregistered / Unconfirmed
GUEST, unregistred user!
在onmousedown里写:
if shift=[ssleft,ssdouble] then
showmessage();
但是双击后必须再单击一下SpeedButton1才能弹起来,请问谁能解决?
 
经常结尾需要这一句:
speedbutton1.down:=false;
 
加在showmessage();后面不起作用.
 
如果需要,在showmessage前面写啊。
 
不行啊.
 
speedbutton1.down:=false;

application.processmessages;
showmessage('???');
就行了啊
 
jenhon,谢谢你的关注.
但是还是不行.你的电脑上能实现吗?是怎么设置的?
 
把判断条件分为两句就OK了: if shift=ssleft or shift=ssdouble then
showmessage();
 
对不起,一直没看仔细,你把事件写在 mousedown 下面,我一直以为是在onclick里面。
写在mousedown 里面,我这边也出现你说的这种情况。应该是showmessage的关系,我尝试了做其他动作,speedbutton都不会凹进去,会还原的,你看是否换一下showmessage的方法?
 
没办法,变通一下:
设置一个公用变量,在mousedown事件里,如果shift=[ssleft,ssdouble]则变量为true,
在mouseup事件里判断变量为true时showmessage.
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
884
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
I
回复
0
查看
400
import
I
顶部