aardio 快捷键与热键

By xwcxf at 9 天前 • 0人收藏 • 36人看过

今天开始学习aardio中的快捷键与热键设置。


简单热键设置

我发现aardio里设置热键其实很简单,用key.hotkey模块就能轻松实现。试了个小例子,当按下Ctrl+Alt+A组合键时,程序会弹出消息框,代码如下:

import win.ui;
import key.hotkey
/*DSG{{*/
var winform = win.form(text="热键示例";right=759;bottom=469)
winform.add(
edit={cls="edit";text="试试按下 Ctrl+Alt+A!";left=18;top=30;right=739;bottom=149;edge=1;multiline=1;z=1}
)
/*}}*/

hotkey = key.hotkey();

hotkey.loadTable({
    ["Ctrl+Alt+A"] = function(){  
        win.msgbox("你按下了 Ctrl+Alt+A!")
    };
})
winform.show()
win.loopMessage()


这里先创建了hotkey对象,然后用loadTable方法设定热键组合和对应的操作函数,运行后按下组合键真的弹出了消息框,超有成就感!



多个热键设置

原来还能在一个程序里设置多个热键,每个热键对应不同功能,试了下设置Ctrl+Alt+A和Ctrl+Alt+B两个热键,代码是这样的:


import win.ui;
import key.hotkey;
/*DSG{{*/
var winform = win.form(text="多个热键示例";right=759;bottom=469)
winform.add(
edit={cls="edit";text="试试按下 Ctrl+Alt+P 或 Ctrl+Alt+B";left=17;top=26;right=731;bottom=160;edge=1;multiline=1;z=1}
)
/*}}*/

hotkey = key.hotkey();
hotkey.loadTable({
    ["Ctrl+Alt+P"] = function(){  
        win.msgbox("你按下了 Ctrl+Alt+P!")
    };
})

hotkey.loadTable({
    ["Ctrl+Alt+B"] = function(){  
        win.msgbox("你按下了 Ctrl+Alt+B!")
    };
})

winform.show()
win.loopMessage()



就像给程序设置了不同的“密码组合”,按下不同热键会弹出不同消息,感觉程序一下子变得灵活起来了。


热键与程序功能结合

把热键和程序功能结合起来才是真正的实用场景,试了用热键触发打开记事本的操作,代码如下:


import win.ui;
import key.hotkey
import process;
/*DSG{{*/
var winform = win.form(text="热键与功能结合示例";right=759;bottom=469)
winform.add(
edit={cls="edit";text="试试按下 Ctrl+Alt+N";left=26;top=18;right=708;bottom=141;edge=1;multiline=1;z=1}
)
/*}}*/

var hotkey = key.hotkey();
hotkey.loadTable({
    ["Ctrl+Alt+N"] = function(){  
        process.execute("notepad.exe")
    };
})
winform.show()
win.loopMessage()



按下Ctrl+Alt+N真的瞬间打开了记事本,这种“一键启动”的感觉太爽了,以后可以用热键触发各种程序操作。


挑战

尝试完成了设置文件保存和打开热键的习题,写了个完整程序:


import win.ui;
import process;
import key.hotkey;
/*DSG{{*/
var winform = win.form(text="热键综合示例";right=759;bottom=469)
winform.add(
edit={cls="edit";text="试试先按下 Ctrl+Alt+S 再按下 Ctrl+Alt+C";left=37;top=36;right=736;bottom=142;edge=1;multiline=1;z=1}
)
/*}}*/

var hotkey = key.hotkey();
hotkey.loadTable({
    ["Ctrl+Alt+S"] = function(){  
        var filePath = io.file("文本文件.txt","w+");
        filePath.write('这是保存的文本内容。');
        filePath.close()
        win.msgbox("文件保存成功")
    };
})

hotkey.loadTable({
    ["Ctrl+Alt+C"] = function(){  
        import console
        var filePath = "./文本文件.txt";
        process.execute("notepad.exe",filePath)
    };
})


winform.show()
win.loopMessage()




Ctrl+Alt+S能保存文本文件,Ctrl+Alt+C能打开文件,通过io.file实现文件写入,用process.execute调用记事本打开文件,终于实现了热键控制文件操作,成就感满满!


学习总结

今天学会了用key.hotkey模块设置热键,从简单单个热键到多个热键,再到结合程序功能,最后实现文件操作热键,一步步掌握了热键设置的核心用法。感觉热键设置让程序操作变得更便捷,就像给程序赋予了“快捷键魔法”,以后要多尝试把热键和更多功能结合起来,提升程序使用效率。



2 个回复 | 最后更新于 8 天前
8 天前   #1

8 天前   #2

回复#1 @aubreychao :

谢谢

登录后方可回帖

登 录
信息栏
本站域名

ChengXu.XYZ

投诉联系:  popdes@126.com



快速上位机开发学习,本站主要记录了学习过程中遇到的问题和解决办法及上位机代码分享

这里主要专注于学习交流和经验分享.
纯私人站,当笔记本用的,学到哪写到哪.
如果侵权,联系 Popdes@126.com

友情链接
Aardio官方
Aardio资源网


才仁机械


网站地图SiteMap

Loading...