要点: 使用控件的 split 函数拆分多个控件。 例如: 参数也可以是控件数组,每个控件数组必须包含位于拆分条同一侧的控件。 例如: 在调整窗口大小时,拆分条会负责让被拆分的控件吸附在自己的两侧。 但是被拆分控件以及拆分条本身的其他固定边距属性、自适应大小属性应当自行根据需要设置。用法说明
winform.splitter1.split( winform.edit1,winform.edit2 )
winform.splitter1.split( winform.edit1,{ winform.edit2,winform.edit3} )
拆分条控件支持库
拆分条控件
创建该控件的父窗口(win.form对象),
设计时窗体容器是所有拖放在窗体上的控件的 _parentForm,
即使窗口移除子窗口样式、更改父子关系,或以 orphanWindow显示,
控件的 _parentForm 始终都不会改变
splitterObject.adjust = function( cx,cy,wParam ) {
};
调整窗口 - 自定义事件函数
底部坐标
是否捕获全局鼠标消息
运行时类名
关闭控件窗口
设计时类名
是否禁用
控件客户区块位置(::RECT结构体)
返回父窗口
返回相对坐标,宽,高
x,y,cx,cy=win.getPos(hwnd)
控件区块位置(::RECT结构体)
控件屏幕区块位置(::RECT结构体)
高度
控件是否隐藏
是否水平拆分条
控件句柄
控件ID
使窗口绘图区无效
使窗口绘图区无效
不刷新背景
左侧坐标
拆分条左边或上边的控件。
可以是控件对象,也可以是包含控件的数组。
只能调用 split 函数修改此属性。
前面的控件最小尺寸
修改窗口样式,所有参数都是可选参数,
@remove 用数值指定要移除的样式,可使用 WS 前缀的常量
@add 用数值指定要添加的样式,可使用 WS 前缀的常量
@swpFlags 可选用数值指定调整窗口选项,可使用 SWP 前缀的常量
如果指定了 @swpFlag ,则使用该参数调用::SetWindowPos
细节请参考 win.modifyStyle 函数源码
修改窗口扩展样式,所有参数都是可选参数,
@remove 用数值指定要移除的样式,可使用 WS_EX 前缀的常量
@add 用数值指定要添加的样式,可使用 WS_EX 前缀的常量
@swpFlags 可选用数值指定调整窗口选项,可使用 SWP 前缀的常量
如果指定了 @swpFlag ,则使用该参数调用::SetWindowPos
细节请参考 win.modifyStyle 函数源码
splitterObject.onSplitterMoved = function(l,t,r,b){
/*拆分条已被拖拽移动到新位置,l,r,r,b 分别为左上右下坐标*/
}
投递窗口消息到消息队列中
此函数用法请参考 ::User32.PostMessage
拆分条右边或下边的控件。
可以是控件对象,也可以是包含控件的数组。
只能调用 split 函数修改此属性。
后面的控件最小尺寸
刷新
刷新
透明背景时请使用此函数替代redraw()
右侧坐标
发送窗口消息
此函数用法请参考 ::User32.SendMessage
改变父窗口
调整窗口位置或排序,所有参数可选
同时指定x,y坐标则移动位置
同时指定宽高则改变大小
指定插入位置(句柄或_HWND前缀常量)则调整Z序
设置控件区块位置(::RECT结构体)
设置控件屏幕区块位置(::RECT结构体)
显示控件
指定需要拆分的控件。
参数可以是控件对象,也可以是包含控件对象的数组。
同一数组中的控件必须位于拆分条的同一侧。
被折分的控件可在控件属性中指定是否支持自动调整大小。
也可以将更多控件可放入子窗口并以 custom 控件作为容器加载,然后再拆分。
listbox 反复改变高度会因为自动适应项目行高而越来越小,
要用拆分条改变 listbox 高度时最好也放入 custom 容器
控件文本
外观主题,例如
winform.button.theme = "Explorer"
winform.button.theme = false
顶部坐标
splitterObject.translateAccelerator = function(msg){
/*返回是否快捷键*/
}
重绘invalidate函数指定的区块
宽度