新成员 刚刚做好的修改鼠标滚轮方向的小软件
By
h5angj1e
at 2022-11-22 • 0人收藏 • 840人看过
import win.ui; /*DSG{{*/ var winform = win.form(text="aardio form";right=391;bottom=415;bgcolor=3355443;border="thin";exmode="toolwindow") winform.add( FlipFlopWheel0={cls="button";text="全部正向";left=16;top=368;right=152;bottom=400;bgcolor=3355443;color=13421772;db=1;dl=1;z=2}; FlipFlopWheel1={cls="button";text="全部反向";left=240;top=368;right=376;bottom=400;bgcolor=3355443;color=13421772;db=1;dr=1;z=3}; static={cls="static";text="FlipFlopWheel = 0是正常, = 1是反向";left=16;top=8;right=376;bottom=24;color=13421772;dl=1;dr=1;dt=1;transparent=1;z=4}; treeview={cls="treeview";left=16;top=32;right=376;bottom=352;asel=false;bgcolor=3355443;color=13421772;db=1;dl=1;dr=1;dt=1;edge=1;hscroll=1;vscroll=1;z=1} ) /*}}*/ //import console; import win.reg; import win.ui.tooltip; //仅打开已存在的路径,鼠标路径 var mousePath = "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\HID"; var reg = win.reg(mousePath,true); //没用上的提示控件 var tooltipCtrl = win.ui.tooltip(winform); //硬件表,用于渲染上屏 var tb = {}; //注册表对象 var regCtrls = {}; var regInit = function(){ //硬件记数 var count = 0; winform.treeview.clear(); //枚举子项、以及子项的所有子项 reg.enumKey( function( subKey, /*这是某个子节点(win.reg对象)*/ keyname/*这是reg子节点的一个子项的名字*/ ){ var dp = "Device Parameters"; if(keyname == dp){ var valPath = subKey.path + "\" + dp ; var val = win.reg(valPath,true); if(val.queryValue("FlipFlopWheel") != null){ count++ //替换前半部分的路径 var DriverPath = string.replace(subKey.path,"@" + mousePath,""); //取滚轮的值,0或1 var FlipFlopWheel = val.queryValue("FlipFlopWheel"); //保存注册表对象到表用于修改值 regCtrls[[DriverPath]] = val; //赋值上屏的表 tb[[DriverPath]] = { "FlipFlopWheel" = FlipFlopWheel; } winform.text = "当前滚轮方向:" + (FlipFlopWheel ? "反向" :"正向"); winform.text = winform.text + "(" + count +"个鼠标实例)"; } } } ) winform.treeview.insertTable(tb); winform.treeview.expandAll(); } //初始化的时候上屏 regInit(); import win.dlg.message; //改注册表的方法 var changeMouseFlipFlopWhee = function(falg){ for(k,v in regCtrls){ //改注册表 v.setDwValue("FlipFlopWheel",falg); }; //提示 winform.msgOk((falg ? '完成反向' :'完成正向' )+ ", 重启生效",500); //上屏 regInit(); } winform.FlipFlopWheel0.oncommand = function(id,event){ changeMouseFlipFlopWhee(0) } winform.FlipFlopWheel1.oncommand = function(id,event){ changeMouseFlipFlopWhee(1) } winform.show(); win.loopMessage();
6 个回复 | 最后更新于 2022-11-23
登录后方可回帖
因为注册表的路径总是很难记又难找,所以用万能因为注册表的路径总是很难记又难找,所以用万能的AARDIO写了一个小程序的AARDIO写了一个小程序