(转)简单讲一下 win.ui.mask 的用法

By admin at 2018-07-30 • 0人收藏 • 234人看过

感谢校长分享的代码,这里记录下群里的资料方便以后查看

import win.ui;

/*DSG{{*/ 

var winform = win.form(text="aardio form";right=759;bottom=469) winform.add( button={cls="button";text="button";left=416;top=80;right=624;bottom=160;z=1}; edit={cls="edit";text="edit";left=112;top=192;right=528;bottom=304;edge=1;multiline=1;z=2} ) /*}}*/ 

 import win.ui.mask; 

var frmMask = win.ui.mask(winform,true) 

winform.button.oncommand = function(id,event){ 

 winform.button.disabledText = "窗口客户区禁用中..." 

 frmMask.show(true); //显示遮罩 

 win.delay(2000); 

 winform.button.disabledText = null; 

 frmMask.show(false); //隐藏遮罩 

 winform.show() 

 win.loopMessage(); 

用起来非常简单, 其实遮罩很有用,而且写起来也麻烦,不过这个库都做好了, 如果是无边框窗口,遮罩窗口还可以指定外边距,非常方便。

在win10上,类似 winspy之类工具,高亮窗口的功能全失效了,微软自己的工具都一样,最初这个是写在 winspy里的,现在把他提取到了 win.ui.mask里,可以用到自己的窗口内部,也可以用来去高亮外部窗口(支持鼠标穿透)


2 个回复 | 最后更新于 2018-07-31
2018-07-30   #1

import win.flashBox

var flash =  win.flashBox(text="aardio Form";right=599;bottom=399)

flash.movie = "http://www.missyuan.net/uploads/media/091014/1-1004291H324.swf";

flash.show()

win.loopMessage();

试一下这个效果,屏幕透明3D动画菜单,几句代码,不用带任何运行库,你要用其他东西做这效果,还真不容易。

感谢一鹤大大提供的库。收藏备查。

2018-07-31   #2

import com.flashMenu;

var flash = com.flashMenu(text="桌面透明3D动画菜单");//导出flash可以调用的aardio函数

flash.external = { 

 onItemClick = function(str,idx){  

  if( str == "退出演示" ) flash._form.close(); 

 }

}

//调用flash函数加载菜单(可重复调用)

flash.loadMenu({"退出演示";"退出演示";"退出演示";"重新加载菜单1";"重新加载菜单2";"重新加载菜单3";"退出演示";"退出演示";"退出演示";"重新加载菜单1";"重新加载菜单2";"重新加载菜单3";"退出演示";"退出演示";"退出演示";"重新加载菜单1";});

flash.show();

win.loopMessage();

校长改进了一下这个菜单。

改了一下那个3d菜单,在as脚本里加了个loadMenu函数和onItemClick 事件。原来那个有些问题,不能显示中文字,改中文设备字体以后鼠标放上去会闪烁,这个都弄好了。

把as的源码放到这个com.flashMenu扩展库里了,做出来的swf体积很小,3KB,一个jpg都比他大。

function loadMenu(arr:Array)

:void { }

ExternalInterface.addCallback("loadMenu", loadMenu); AS脚本里这样写,loadMenu函数就可以导出别的语言就可以调用了(实际上你用js和aardio可以调用,用其他语言估计你会累死在路上)

flash调用aardio也简单,AS里这样写:ExternalInterface.call("onItemClick",item.menuItemText.text,idx+1);主要都是用这个ExternalInterface

flashVars也可以传参(等价于在swf网址后面写参数.....),但他这个传进去是字符串,没有 ExternalInterface方便可以传任何对象

flash与js的交互接口,aardio可以较完美的支持,所以原来在网页里的swf,可以很简单的移植到客户端,再也不用出现烦人的点击启用flash之类。


登录后方可回帖

登 录
信息栏
本站永久域名:HtmLayout.Cn
纯私人站,当笔记本用的,学到哪写到哪,目前正在学aardio+halcon机器视觉.
本 站 主 站:Stm32cube中文网
Aardio 官方站:Aardio官方
Aardio最新功能:Aardio官方更新日志
aardio在线手册Aardio在线手册
黑猫Aar教程网:简码编程
C大Aardio论坛:Aar爱好者论坛
AARDIO语言QQ群:70517368
赞助商:才仁机械
下载站:非凡软件站
Loading...