窗体中添加 listbox 控件
msel = true/false 是否允许多选
允许多选
winform.add(
listbox={ bgcolor=16777215;bottom=296;right=222;left=71;
items={"列表内容" };msel=1;z=1;top=95;edge=1;cls="listbox" }
)
不允许多选
winform.add(
listbox={ bgcolor=16777215;bottom=296;right=222;left=71;top=95;
items={ "列表内容"};z=1;edge=1;cls="listbox" }
)
智能命令提示:
属性列表
1.动态添加内容及删除内容函数
listbox.add(__/*请输入文本*/,1) = 添加列表项到头部, 函数第二个
listbox.add(__/*请输入文本*/) = 添加列表项到尾部
listbox.add(__/*请输入文本*/,-1) = 添加列表项到尾部
listbox.add("添加项",位置) = 添加列表项到指定位置,第二个参数为位置数值
listbox.delete() = 删除当前选中项或第一项,删除后列表内容自动向上
listbox.delete(__) = 删除指定项,参数为位置数值
listbox.clear() = 清除列表框所有内容
2.选择类函数
listbox.items = 列表项集合table对象
listbox.count = 列表项数目
listbox.getItemText(__/*项索引*/) = 获取指定项文本,参数为位置数值
listbox.getItemRect(__/*项索引*/) = 获取指定项区块位置返回::RECT() 结构体
listbox.selIndex = 获取或设置列表框当前选中项(仅在单选模式下有效)
多选模式下请使用 getSelected() setSelected() 函数
listbox.selText = 获取当前选项的文本或根据指定的文本查找并改变选项
listbox.getAt(x,y) = 返回指定客户区坐标所在的项索引.
listbox.hitTest(.(x坐标,y坐标,是否屏幕坐标) = 该函数返回指定坐标的句柄,参数三可省略,默认为false.如果不指定任何参数,则自动获取当前消息坐标
3.控制类函数
listbox.hwnd = 控件句柄
listbox.id = 控件ID
listbox._parentForm = 控件所在的父窗口(指win.form对象)winform.
listbox.getParent() = 返回父窗口static.
listbox.setParent(__/*控件对象*/) = 改变父窗口
listbox.addCtrl = @.addCtrl( edit ={ cls="edit";left=0;top=0;right=50;bottom=50;autoResize=false ;hide=1;edge=1; })
位置属性
listbox.left = 左侧坐标
listbox.right = 右侧坐标
listbox.top = 顶部坐标
listbox.bottom = 底部坐标
listbox.width = 宽度
listbox.height = 高度
listbox.getFont() = 控件字体(::LOGFONT结构体)logfont.
listbox.setFont(__/*指定字体*/) = 指定LOGFONT字体对象,或逻辑字体句柄
listbox.setFont(混入字体属性) = @.setFont(point=10;name="宋体");
listbox.clientRect = 获取控件客户区块位置(::RECT结构体)
listbox.theme = 外观主题,例如winform.button.theme = "Explorer"winform.button.theme = false
listbox.redraw() = 刷新
listbox.disabled = 是否禁用
listbox.show(true__) = 显示控件
listbox.close() = 关闭控件窗
listbox.selectRange(1,__) = 选中指定范围如果不指定任何参数,取消选区
listbox.setSelected(1__/*项索引*/) = 选中指定项,索引为0则选定全部该函数仅在开启控件多选模式下有效单选模式下请使用selIndex属性替代
listbox.setSelected(1__/*项索引*/,false) = 取消选中指定项,索引为0则取消全选
listbox.getSelected(1__/*项索引*/) = 是否选中
listbox.findEx(__/*请输入文本*/) = 精确查找指定的项找不到返回0
listbox.find(__/*请输入文本*/) = 在列表框里查找指定的项找不到返回0
listbox.addfile(__/*请输入路径*/) = 向列表框里增加一个文件(包括目录)
listbox.getRect() = 控件区块位置(::RECT结构体)
listbox.getRect(true) = 控件屏幕区块位置(::RECT结构体)
listbox.setRect(rc) = 设置控件区块位置(::RECT结构体)
listbox.setRect(rc,true) = 设置控件屏幕区块位置(::RECT结构体)
listbox.getClientRect() = 控件客户区块位置(::RECT结构体)rect.
listbox.modifyStyle(.(remove,add) = 如果指定第三个参数,则使用此参数调用::SetWidnowPos
listbox.modifyStyleEx(.(remove,add) = 如果指定第三个参数,则使用此参数调用::SetWidnowPos
listbox.capture = 是否捕获全局鼠标消息
listbox.invalidate(__/*可选使用::RECT()对象指定客户区*/) = 使窗口绘图区无效
listbox.invalidate(__/*可选使用::RECT()对象指定客户区*/,0) = 使窗口绘图区无效不刷新背景
listbox.update() = 重绘invalidate函数指定的区块
listbox.setFocus() = 设置焦点
listbox.setPos(.(x坐标,y坐标,宽,高,插入位置,参数) = 调整窗口位置或排序,所有参数可选同时指定x,y坐标则移动位置同时指定宽高则改变大小指定插入位置(句柄或_HWND前缀常量)则调整Z序
listbox.getPos() = 返回相对坐标,宽,高x,y,cx,cy=win.getPos(hwnd)
listbox.onMeasureItem(measureItem) = @.onMeasureItem = function(measureItem){measureItem.itemHeight = 51; }
listbox.onDrawItem(drawItem) = @.onDrawItem = function(drawItem){
}
消息参数
_LBN_DBLCLK=@0x2/*_LBN_DBLCLK*/
_LBN_KILLFOCUS=@0x5/*_LBN_KILLFOCUS*/
_LBN_SELCANCEL=@0x3/*_LBN_SELCANCEL*/
_LBN_SELCHANGE=@0x1/*_LBN_SELCHANGE*/
_LBN_SETFOCUS=@0x4/*_LBN_SETFOCUS*/
_LBS_DISABLENOSCROLL=@0x1000/*_LBS_DISABLENOSCROLL*/
_LBS_EXTENDEDSEL=@0x800/*_LBS_EXTENDEDSEL*/
_LBS_HASSTRINGS=@0x40/*_LBS_HASSTRINGS*/
_LBS_MULTICOLUMN=@0x200/*_LBS_MULTICOLUMN*/
_LBS_MULTIPLESEL=@0x8/*_LBS_MULTIPLESEL*/
_LBS_NODATA=@0x2000/*_LBS_NODATA*/
_LBS_NOINTEGRALHEIGHT=@0x100/*_LBS_NOINTEGRALHEIGHT*/
_LBS_NOREDRAW=@0x4/*_LBS_NOREDRAW*/
_LBS_NOTIFY=@0x1/*_LBS_NOTIFY*/
_LBS_OWNERDRAWFIXED=@0x10/*_LBS_OWNERDRAWFIXED*/
_LBS_OWNERDRAWVARIABLE=@0x20/*_LBS_OWNERDRAWVARIABLE*/
_LBS_SORT=@0x2/*_LBS_SORT*/
_LBS_USETABSTOPS=@0x80/*_LBS_USETABSTOPS*/
_LBS_WANTKEYBOARDINPUT=@0x400/*_LBS_WANTKEYBOARDINPUT*/
_LB_ADDFILE=@0x196/*_LB_ADDFILE*/
_LB_ADDSTRING=@0x180/*_LB_ADDSTRING*/
_LB_CTLCODE=@0x0/*_LB_CTLCODE*/
_LB_DELETESTRING=@0x182/*_LB_DELETESTRING*/
_LB_DIR=@0x18D/*_LB_DIR*/
_LB_FINDSTRING=@0x18F/*_LB_FINDSTRING*/
_LB_FINDSTRINGEXACT=@0x1A2/*_LB_FINDSTRINGEXACT*/
_LB_GETANCHORINDEX=@0x19D/*_LB_GETANCHORINDEX*/
_LB_GETCARETINDEX=@0x19F/*_LB_GETCARETINDEX*/
_LB_GETCOUNT=@0x18B/*_LB_GETCOUNT*/
_LB_GETCURSEL=@0x188/*_LB_GETCURSEL*/
_LB_GETHORIZONTALEXTENT=@0x193/*_LB_GETHORIZONTALEXTENT*/
_LB_GETITEMDATA=@0x199/*_LB_GETITEMDATA*/
_LB_GETITEMHEIGHT=@0x1A1/*_LB_GETITEMHEIGHT*/
_LB_GETITEMRECT=@0x198/*_LB_GETITEMRECT*/
_LB_GETLOCALE=@0x1A6/*_LB_GETLOCALE*/
_LB_GETSEL=@0x187/*_LB_GETSEL*/
_LB_GETSELCOUNT=@0x190/*_LB_GETSELCOUNT*/
_LB_GETSELITEMS=@0x191/*_LB_GETSELITEMS*/
_LB_GETTEXT=@0x189/*_LB_GETTEXT*/
_LB_GETTEXTLEN=@0x18A/*_LB_GETTEXTLEN*/
_LB_GETTOPINDEX=@0x18E/*_LB_GETTOPINDEX*/
_LB_INSERTSTRING=@0x181/*_LB_INSERTSTRING*/
_LB_MSGMAX=@0x1A8/*_LB_MSGMAX*/
_LB_OKAY=@0x0/*_LB_OKAY*/
_LB_RESETCONTENT=@0x184/*_LB_RESETCONTENT*/
_LB_SELECTSTRING=@0x18C/*_LB_SELECTSTRING*/
_LB_SELITEMRANGE=@0x19B/*_LB_SELITEMRANGE*/
_LB_SELITEMRANGEEX=@0x183/*_LB_SELITEMRANGEEX*/
_LB_SETANCHORINDEX=@0x19C/*_LB_SETANCHORINDEX*/
_LB_SETCARETINDEX=@0x19E/*_LB_SETCARETINDEX*/
_LB_SETCOLUMNWIDTH=@0x195/*_LB_SETCOLUMNWIDTH*/
_LB_SETCOUNT=@0x1A7/*_LB_SETCOUNT*/
_LB_SETCURSEL=@0x186/*_LB_SETCURSEL*/
_LB_SETHORIZONTALEXTENT=@0x194/*_LB_SETHORIZONTALEXTENT*/
_LB_SETITEMDATA=@0x19A/*_LB_SETITEMDATA*/
_LB_SETITEMHEIGHT=@0x1A0/*_LB_SETITEMHEIGHT*/
_LB_SETLOCALE=@0x1A5/*_LB_SETLOCALE*/
_LB_SETSEL=@0x185/*_LB_SETSEL*/
_LB_SETTABSTOPS=@0x192/*_LB_SETTABSTOPS*/
_LB_SETTOPINDEX=@0x197/*_LB_SETTOPINDEX*/
示例: