JacenHe
JacenHe
aardio作者
关注数: 10
粉丝数: 472
发帖数: 1,838
关注贴吧数: 3
aardio + VBScript 编写桌面软件 import console; import web.script; //创建 VBScript 虚拟机 var vm = web.script("VBScript") //直接将 aardio 对象(表、数组、函数)赋值为 vm 的成员,即可在 VBScript 中直接调用。 vm.external = { add = function(a,b){ return a + b; }; } //模拟 WScript 对象 vm.WScript = { CreateObject = ..com.CreateObject; GetObject = ..com.GetObject; Echo = function(...){ console.log(...); }; } //加载 VBScript,也可以用 vm.doScript() 函数加载脚本。 vm.script = /* Function TestFunction(a,b) Dim shell, ns, item '创建 COM 对象 Set shell = CreateObject("Shell.Application") Set ns = shell.NameSpace("::{7007ACC7-3202-11D1-AAD2-00805FC1270E}") '遍历 COM 对象 For Each item In ns.Items() '注意 VBScript 调用方法且不接收返回值时,不要加括号。 WScript.Echo item.Name,item.Path Next TestFunction = external.add(a(0),b(0)) End Function */ //通过 vm.script.函数名() 调用 VBScript 函数。 var ret = vm.script.TestFunction({12,13},{2,3}); console.log( ret ); console.pause();
aardio + 批处理 轻松编写图形化软件 aardio 提供了 process.batch 可以方便地嵌入批处理。 process.batch 的源代码很少只有数十行,支持的功能如下: 1、实现隐藏控制台窗口执行批处理代码,轻松地为批处理代码编写图形界面。使用 process.batch 执行批处理也会返回管道对象,可以方便地读写批处理进程,获取返回值,退出代码等等。 2、可以方便地将批处理嵌入 aardio 程序生成独立 EXE 文件,直接将批处理脚本添加到 aardio 工程即可,不需要多写任何代码。 3、可以在 aardio 源代码中直接写批处理代码,在批处理中编写 aardio 代码,遵守类PHP的 aardio 模板语法即可,类似用aardio 写网站时将 aardio 代码与 HTML代码写在一起。 来个演示例子看一下效果:上面的示例的源码请参考 aardio 自带范例:「批处理与命令行」aardio 工程向导中也提供了批处理工程范例:
Win10/11 自带输入法一键替换为表形码,支持反查、拼音混输 输入法开源软件 WubiLex( 绿色软件体积仅 960KB ) 已经支持表形码,可以一键将 Win10/Win11 自带输入法替换为表形码输入法,已自带表形码威版、老夫子版、 Win95 版码表,支持微软权重数据,支持拼音混输,支持反查,已利用 WubiLex 空码加流行词功能补了十几万流行词。
实现圆环进度条 import win.ui; /*DSG{{*/ var winform = win.form(text="圆形进度条";right=759;bottom=469) winform.add( plus={cls="plus";left=390;top=108;right=643;bottom=361;notify=1;z=1} ) /*}}*/ winform.plus.setPieRange(1,360) winform.plus.progressPos = 1; winform.plus.foreground = 0x80ffff00;//也可以改为图像,图像应设为center显示模式以居中对齐 winform.plus.background = 0x60ff00ff;//也可以改为图像,图像应设为center显示模式以居中对齐 winform.setInterval( 10,function(){ winform.plus.progressPos = winform.plus.progressPos+1 } ) //在输出图像以后,抠出圆环效果 winform.plus.onDrawForegroundEnd = function(graphics,rc){ //切换为替换绘图模式 graphics.compositingMode = 1/*_CompositingModeSourceCopy*/; //创建一个透明刷子 var brush = gdip.solidBrush() rc.inflate(-(rc.width()/5),-(rc.height()/5)) //用透明刷子擦除中心圆形 graphics.fillEllipse(brush,rc.left,rc.top,rc.width(),rc.height()); brush.delete(); //恢复为叠加绘图模式 graphics.compositingMode = 0/*_CompositingModeSourceOver*/ } winform.show() win.loopMessage();
wubiLex - WIN10自带五笔一键替换为郑码输入法 wubiLex 新版已经可以更好的支持郑码,所以重发一帖。 wubiLex可以支持WIN10所有版本,但只有WIN 10 1703以上的版本才能支持郑码的z键编码词条。 wubiLex是一个WIN10系统自带五笔的码表与短语词库安装、管理工具,并可增强微软五笔的设置、热键等功能。 发布后的软件仅820KB, 只要一个EXE文件,不需要安装,不需要任何DLL依赖。软件已自带五笔86、98、091、新世纪码表,以及极点五笔、QQ五笔、 微软五笔默认词库、至善词库、昱琼词库、海峰词库等。甚至自带了郑码词库、可以一键把微软五笔替换为郑码输入法。上面的图片中我们可以看到 wubiLex 甚至可以将微软五笔一键替换为郑码输入法,其实这个手动替换是有些麻烦的,在五笔中z键是通配键 - 而在郑码中z键是可以用来编码的,在五笔中连按四下是键名字 - 而在郑码中这是普通编码不能单字优先。wubiLex 可以自动解决这些问题。wubiLex 可以兼容很多的码表格式,例如词前码后、码前词后,一码一行,一行多码等等,并可以直接导入RIME码表、极点码表、微软码表等等。可以导入导出CSV、JSON、以及LAMA压缩格式码表,方便把码表转换为其他编程语言易于处理的格式。 wubiLex 也支持直接编辑五笔短语词库(实时生效,不需要点击很多步骤到设置面板去导入)。并扩展了微软五笔短语的功能,兼容各种短语词库格式,支持方便的自定义特殊字符数组。可自动识别26键码表并自动安装z键编码的词条到短语词库(实现一键安装郑码)。wubiLex提供了方便的反查拆字功能。按 Ctrl + F2 反查郑码编码,再Ctrl + F2 回到原来窗口不影响继续输入。反查可显示详细的拆字图解。并提供虚拟键盘准确显示按键方位,鼠标悬停在虚拟键上可显示单键字根图。我们一般看到的字根图都是包含所有按键字根的全图,但是这种字根图会让人眼花缭乱,如果我们的眼睛看到的内容越多,记忆效率就会越低。所以我制作了这种简洁版的虚拟键盘,因为非常简洁,反查的时候会清晰明确的显示某个字词的按键位置、按键顺序,越简洁明确的图示 - 记忆效率就越高。如果我们把鼠标移动到某个按键上,就会显示此按键的字根图 - 要知道一次专注记一个键的字根会比记忆眼花缭乱的全图容易得多。 另外, wubiLex 提供了系统五笔设置、热键设置快捷入口。在这里我们可以快捷的修改一些常用的、或者微软五笔本身没有提供的选项,增加了原微软五笔设置页未提供的选项,例如中文模式下输入英文标点,以及英文标点默认全角半角等等。我们甚至可以利用 wubiLex 修改微软五笔的图标、输入法名称等等,在这里我们也可以为输入法候选窗指定更多的字体。另外,wubiLex还提供了强大的「超级热键」功能,可以用于扩展输入法功能,列如输入数字后自动将句号转换为小数点,输入大写中文数字的中文日期等等。郑码字根图:
WIN10自带微软五笔技巧:一键切换为新世纪码表 首先需要下载工具软件 wubiLex ( WIN10 五笔助手 ), 这是一个非常小的开源软件,体积仅970KB,已经自带五笔86、98、新世纪等码表,可以一键切换 打开 wubiLex,点击新世纪码表,然后点『安装到系统码表』即可,如图:wubiLex还可支持反查新世纪编码,并可显示对应的拆分图解,如图:使用 wubiLex 还可以增强微软五笔的短语词库功能,例如支持字符数组,如图:wubiLex的超级热键:更多的微软五笔使用技巧:
aardio 中嵌入 VB6 控件,免注册调用,兼容XP,Win7,Win8,Win10 aardio 开发环境体积仅 5.6MB ,可以非常方便的生成独立、绿色、无依赖的软件,生成的软件极小。并且aardio生成的软件可以完美兼容XP,Vista,Win7,Win8,Win10......等所有流行桌面操作系统。aardio中可以非常方便的嵌入 VB6 制作的 ActiveX 控件,即使在WIN7,WIN10上也不需要请求管理权限注册控件。 在aardio中调用VB控件非常简单,几句代码就可以嵌入VB控件了。实际上这几句代码都可以自动生成,在 aardio开发环境中打开:“aardio工具/编码/COM控件调用代码生成工具”然后把VB控件往里面一拖 - 就可以自动生成演示代码了。下面看一个调用ecGraph3D控件的例子, 令人吃惊的是,这个 VB 控件居然是10年前写的,相比现在很多流行的HTML5图表控件,ecGraph3D只有几百KB的体积,运行占用的内存只有几MB,小轻快的优势还是很明显的。示例代码( 原作者:popdes )更完整的示例百度 ecGraph3D + aardio 就能找到,地址就不发了。
autohotkey 调用 aardio ,制作漂亮界面 aardio 提供 ahk 扩展库, 可以在 aardio 里调用 ahk代码,也可以在 ahk里调用 aardio代码。 来个例子: import win.ui; /*DSG{{*/ var winform = win.form(text="嵌入autohotkey演示";right=599;bottom=399) winform.add( edit={cls="edit";left=17;top=18;right=565;bottom=374;edge=1;multiline=1;z=1} ) /*}}*/ import ahk; //直接定义允许AHK调用的aardio函数(函数名以on开头) ahk.onTest = function(param){ winform.edit.print( "winform.onTest被ahk调用",param ) } //运行ahk代码 ahk.run( ` #Persistent ;保持ahk线程不退出 #NoTrayIcon ;不显示托盘图标 #include <aardio> ;启动ahk代码中必须加入这句才能与aardio交互 global gVar := "" GetCursorPos(hwnd){ POINT_STRUCT = ( UInt x; UInt y; ) point := Struct( POINT_STRUCT ) DllCall("user32.dll\GetCursorPos", "Ptr", point[]) ; 直接调用aardio函数,支持任意类型、不定个数的调用参数 aardio.onTest({ x : POINT.x, y : POINT.y }) return { x : POINT.x, y : POINT.y } }`); //直接修改ahk全局变量的值 ahk.setGlobal("gVar","测试一下") /* 直接调用ahk里定义的全局函数, 参数和返回值自动支持各种数据类型,就像调用普通aardio函数。 是不是很神奇?! */ var point = ahk.GetCursorPos(ahk.external.hwnd); winform.edit.print("调用ahk函数的返回值:",point); // 当然上面的代码用aardio直接写会更简单,例如: var point = {int x;int y}; ::User32.GetCursorPos(point) winform.show() win.loopMessage();
Win10自带五笔使用技巧 切换词库不用重启:根据当前系统码表反查字根,图解拆分:这样添加短语:设置五笔快捷方法:Win10五笔技巧整理:
1
下一页