win.imageList 构造函数
By
admin
at 2017-11-17 • 0人收藏 • 1933人看过
win.imageList 类主要提供对图片列表的支持。用到这个类的控件有:win.ui.toolbar 类
1、函数原型:
win.imageList( 宽度, 高度 ) win.imageList( 句柄 )
2、函数说明:
创建一个图像列表(win.imageList对象).
如果构造参数指定图像句柄,则使用该句柄指向的图像创建图像列表,否则按给定大小创建图像列表。
3、函数示例:
import win.imageList;// 初始化一个 win.imageList 类 var iml = win.imageList( 16, 16 ); // 提供其他 imageList 的句柄,并从中读取图片列表 var iml2 = win.imageList( iml.handle );
iml.add
1、函数原型:
iml.add( pic, color=0xff00ff )
2、函数说明
向已创建的 win.imageList 实例中添加图片。
pic:图片路径或图片数据
color:图片透明色,此参数可省略,默认值为0xff00ff
3、函数示例:
iml.add( "\res\imageList.gif" ); iml.add( $"\imageList.gif" ); iml.add( $"C:\imageList.gif", 0xff00ff ); //使用$可以包含图片文件到编译后的程序中
如果添加的图片比初始化时给定的大小大,将自动分割图片成为若干张小图片,
具体请看 UI窗体 -> 工具栏控件 范例。
2 个回复 | 最后更新于 2017-11-17
toolbar范例:
import win.ui;
import win.ui.menu;
import win.ui.toolbar;
/*DSG{{*/
var winform = win.form(text="aardio form";right=349;bottom=249;parent=...)
winform.add()
/*}}*/
/*==========菜 单==============*/
winform.popmenu = win.ui.popmenu(winform);//创建弹出菜单
var idFileNew = winform.popmenu.add(
'新建',
function(id){
win.msgbox("新建");
}
);
winform.popmenu.add();//分隔线
winform.popmenu.add('&exit',function(id){ winform.close() })
win.ui.menu(winform).add('file',winform.popmenu)
/*==========工具条==============*/
var toolbar = win.ui.toolbar(winform);
toolbar.create( style = 0x1000/*_TBSTYLE_LIST*/ ); // 创建工具条
toolbar.showLabel = true; //在按钮上显示文字
toolbar.imageList = win.imageList( 16, 16 ).add($"\res\toolbar.gif",0xFF00FF/*透明色*/) ;
toolbar.add();// 添加分隔条
toolbar.add( "新建", , 1,idFileNew/*重用现有命令ID*/ );
toolbar.add(
"禁用",
function (id) {
toolbar.getButton(3).disabled = false;
toolbar.getButtonById(id).disabled = true;
}, 2
);
winform.show(true)
win.loopMessage();示例中用到的图片:

运行后效果;

登录后方可回帖
win.ui.toolbar 类
win.ui.toolbar 类主要提供创建并操作工具栏的函数
1、函数原型:
注意:本函数中的 form 参数可以传递窗口句柄,也可以直接传递窗口实例。
2、函数说明:
按照给定的父窗口,初始化一个工具栏实例。
3、调用示例:
注意:利用本构造函数初始化工具栏实例后,工具栏并不会自动被创建和显示。
本文档以下所有的 tb 均为 win.ui.toolbar 这个类的实例。
tb.create
1、函数原型:
2、函数说明:
按照构造函数中给定的父窗口,以及其他给定的属性,在父窗口顶部创建一个工具栏并显示。
tb.add
1、函数原型:
2、函数说明:
向已创建的工具栏中加入一个工具栏按钮。
iBitmap 参数指的是按钮上的图片,图片的来源为 tb 的 imageList 属性(该属性为 win.imagelist 的实例)。0 为不指定图片,1 为第一张图片,2 为第二张,以此类推。
3、函数示例:
tb.add( "测试", function () { win.msgbox( "您按下了工具栏按钮", "aardio" ); } ); tb.add( "新建", function () { win.msgbox( "新建", "aardio" ); }, 1 );属性列表
1、属性说明:
综合示例
import win.ui; import win.imageList; import win.ui.toolbar; // 创建一个 imagelist var iml = win.imagelist( 16, 16 ); // 添加图片到 imagelist iml.add(string.load( "\res\toolbar.gif" ), 0xff00ff); // 初始化一个 win.ui.toolbar 类 var tb = win.ui.toolbar( winform ); // tb.flat = true; // 工具栏按钮上不显示文字 tb.showLabel = false; // 创建工具栏并显示 tb.create( ); // 将 imagelist 与工具栏绑定 tb.imageList = iml; // 添加工具栏按钮 tb.add( "新建", function () { // code here }, 1 ); tb.add( "打开", function () { // code here }, 2 );