|
发表于 2016-6-4 00:35:14
|
显示全部楼层
不错的尝试,tm 这个最好不要用全局变量,mainForm.plus.tm 这种更明确的命名会好一些, blClickFlag 变量可以不要( 记录点击时间就已经表示单击开始了 )。另外双击而是两次连续的按下鼠标,而不是两次连续的单击。
代码供参考,你可以比一下跟你的代码有哪些不同:
- import win.ui;
- /*DSG{{*/
- mainForm = win.form(text="aardio form";right=759;bottom=469)
- mainForm.add(
- plus={cls="plus";left=7;top=7;right=749;bottom=380;edge=1;notify=1;z=1}
- )
- /*}}*/
- mainForm.plus.onMouseDown = function(wParam,lParam){
- if( !mainForm.plus.clickTime ){
- mainForm.plus.clickTime = time.tick();
- }
- else{
- if( time.tick()-mainForm.plus.clickTime < ::User32.GetDoubleClickTime()){
- mainForm.plus.onMouseDoubleClick(wParam,lParam);
- }
- mainForm.plus.clickTime = null;
- }
- }
- import fsys.dlg;
- mainForm.plus.onMouseDoubleClick = function(id,event){
- var imgPath = fsys.dlg.open("图像文件|*.jpg;*.gif;*.bmp;*.png|");
- if(imgPath){
- mainForm.plus.background = imgPath;
- }
- }
- mainForm.show()
- return win.loopMessage();
复制代码 |
|