aardio 文档

win.ui.ctrl.tab 库模块帮助文档

简单选项卡使用指南

win.ui.ctrl 成员列表

win.ui.ctrl.tab()

简单选项卡控件( classic tab control )

返回对象:uiTabObject

uiTabObject 成员列表

uiTabObject._parentForm

创建该控件的父窗口(win.form对象),
设计时窗体容器是所有拖放在窗体上的控件的 _parentForm,

即使窗口移除子窗口样式、更改父子关系,或以 orphanWindow显示,
控件的 _parentForm 始终都不会改变

返回对象:winform

uiTabObject.add()

创建选项卡(同时创建选项卡按钮与显示内容的子窗口),返回子窗口(win.form 对象)。

参数 @1 指定一个表参数,与 win.form 对象的构造参数相同。
可在窗体设计器中复制 win.form 对象的构造参数作为此函数的参数。
表参数中的 text 字段指定表示选项卡标题(也即子窗口标题)。
参数 @1 也可以用字符串指定创建子窗口的代码文件路径。

返回对象:winform

uiTabObject.adjust

uiTabObject.adjust = function( cx,cy,wParam ) {    
    /*窗口缩放时会自动触发此函数。  
cx 参数为窗口宽度,cy 参数为窗口高度,  
wParam 参数请参考 _WM_SIZE 消息参数说明,一般不用管。  

所有 win.form 创建的窗体和控件都支持此事件,  
重复赋值只会追加而不会覆盖此事件。  
一般不建议添加一个 wndproc 仅仅是为了处理  _WM_SIZE 消息,  
定义 adjust 事件是更好的选择。  

可主动调用此事件,省略参数时 cx,cy 参数默认设为窗口大小*/    
};

uiTabObject.adjustRect()

调整子窗口大小以适应客户区

uiTabObject.bottom

底部坐标

uiTabObject.capture

是否捕获全局鼠标消息

uiTabObject.className

运行时类名

uiTabObject.close()

关闭控件窗口

uiTabObject.cls

设计时类名

uiTabObject.disabled

是否禁用

uiTabObject.form

返回对象:winform

uiTabObject.getClientRect()

控件客户区块位置(::RECT结构体)

返回对象:rectObject

uiTabObject.getFont()

控件字体(::LOGFONT结构体)

返回对象:logfontObject

uiTabObject.getItem(索引)

读取选项结构体

uiTabObject.getItemRect(索引)

读取选项卡区块位置

uiTabObject.getItemText(索引)

读取选项卡标题

uiTabObject.getParent()

返回父窗口

返回对象:staticObject

uiTabObject.getPos()

返回相对坐标,宽,高
x,y,cx,cy=win.getPos(hwnd)

uiTabObject.getRect()

控件区块位置(::RECT结构体)

uiTabObject.getRect(true)

控件屏幕区块位置(::RECT结构体)

uiTabObject.height

高度

uiTabObject.hitTest(x坐标,y坐标,是否屏幕坐标)

返回坐标指向的选项索引
参数三可省略,默认为false.
如果不指定任何参数,则自动调用 win.getMessagePos() 获取消息坐标

uiTabObject.hwnd

控件句柄

uiTabObject.id

控件ID

uiTabObject.invalidate(/*可选使用::RECT()对象指定客户区*/)

使窗口绘图区无效

uiTabObject.invalidate(/*可选使用::RECT()对象指定客户区*/,0)

使窗口绘图区无效
不刷新背景

uiTabObject.items

返回子窗口列表,只读属性

uiTabObject.items.?

选项卡子窗口

返回对象:winform

uiTabObject.left

左侧坐标

uiTabObject.loadForm

加载并添加显示内容的子窗口到选项卡控件。
返回加载到选项卡的子窗体( win.form 对象)。

uiTabObject.loadForm(codePath)

加载并添加显示内容的子窗口到选项卡控件。
返回加载到选项卡的子窗体( win.form 对象)。

参数 @codePath 指定创建窗体的代码文件路径。
请注意保存外部窗体文件以后测试运行。

uiTabObject.loadForm(tParam)

使用表参数 @tParam 创建显示内容的子窗口并添加到选项卡控件。
返回加载到选项卡的子窗体( win.form 对象)。

参数 @tParam 用法与 win.form 构造参数相同。

uiTabObject.modifyStyle(remove,add,swpFlags)

修改窗口样式,所有参数都是可选参数,
@remove 用数值指定要移除的样式,可使用 WS 前缀的常量
@add 用数值指定要添加的样式,可使用 WS 前缀的常量
@swpFlags 可选用数值指定调整窗口选项,可使用 SWP 前缀的常量
如果指定了 @swpFlag ,则使用该参数调用::SetWindowPos
细节请参考 win.modifyStyle 函数源码

uiTabObject.modifyStyleEx(remove,add,swpFlags)

修改窗口扩展样式,所有参数都是可选参数,
@remove 用数值指定要移除的样式,可使用 WS_EX 前缀的常量
@add 用数值指定要添加的样式,可使用 WS_EX 前缀的常量
@swpFlags 可选用数值指定调整窗口选项,可使用 SWP 前缀的常量
如果指定了 @swpFlag ,则使用该参数调用::SetWindowPos
细节请参考 win.modifyStyle 函数源码

uiTabObject.onDestroy

uiTabObject.onDestroy = function(){  
    /*窗口销毁前触发*/  
}

uiTabObject.onDrawItem

uiTabObject.onDrawItem = function(drawItem){   
    if( drawItem.CtlType == 101 /*_ODT_TAB*/ ){  
        /*自绘选项卡,创建控件的参数中需要添加ownerDraw=true*/  
    }             
}

uiTabObject.onSelchange

uiTabObject.onSelchange = function(idx,form){
    /*切找选项卡触发此事件,  
idx 为当前选项索引,数值。  
form 为当前选项页,等价于 tab 控件的 form 属性。*/
}

uiTabObject.oncommand

uiTabObject.oncommand = function(id,event){  
    /*命令事件触发*/  
}

uiTabObject.onnotify

uiTabObject.onnotify = function(id,code,ptr){  
    /*通知事件触发*/  
}

uiTabObject.postMessage(msg,wParam,lParam)

投递窗口消息到消息队列中
此函数用法请参考 ::User32.PostMessage

uiTabObject.redraw()

刷新

uiTabObject.remove()

参数为数值,移除指定索引的选项页

uiTabObject.removeAll()

移除所有选项卡

uiTabObject.right

右侧坐标

uiTabObject.selIndex

读取或设置当前选项索引
起始索引为1

uiTabObject.sendMessage(msg,wParam,lParam)

发送窗口消息
此函数用法请参考 ::User32.SendMessage

uiTabObject.setFocus()

设置焦点

uiTabObject.setFont(指定字体)

指定LOGFONT字体对象,或逻辑字体句柄

uiTabObject.setFont(混入字体属性)

uiTabObject.setFont(point=10;name="宋体");

uiTabObject.setItem(索引,"字符串参数")

设置选项结构体

uiTabObject.setItemText(索引,"字符串参数")

设置选项卡标题

uiTabObject.setParent(控件对象)

改变父窗口

uiTabObject.setPos(x坐标,y坐标,宽,高,插入位置,参数)

调整窗口位置或排序,所有参数可选
同时指定x,y坐标则移动位置
同时指定宽高则改变大小
指定插入位置(句柄或_HWND前缀常量)则调整Z序

uiTabObject.setRect(rc)

设置控件区块位置(::RECT结构体)

uiTabObject.setRect(rc,true)

设置控件屏幕区块位置(::RECT结构体)

uiTabObject.setRedraw(false)

禁止重绘

uiTabObject.setRedraw(true)

恢复重绘

uiTabObject.show(true)

显示控件

uiTabObject.theme

外观主题,例如
winform.button.theme = "Explorer"
winform.button.theme = false

uiTabObject.threadCallable()

开启此控件的跨线程调用功能

uiTabObject.top

顶部坐标

uiTabObject.update()

重绘invalidate函数指定的区块

uiTabObject.width

宽度

uiTabObject.wndproc

uiTabObject.wndproc = function(hwnd,message,wParam,lParam){  
    /*窗口消息回调,返回任意非null值阻止默认回调  
wndproc重复赋值时追加函数而不是覆盖之前的回调  
设为null添除所有消息回调函数  
wndproc也可以是一个表,键要为处理的消息,值为对应的消息回调函数*/     
}

win.ui.ctrl.tab 成员列表

win.ui.ctrl.tab.TCITEM()

选项结构体

自动完成常量

_TCM_FIRST=0x1300
_TCS_BOTTOM=2
_TCS_BUTTONS=0x100
_TCS_FIXEDWIDTH=0x400
_TCS_FLATBUTTONS=8
_TCS_FOCUSNEVER=0x8000
_TCS_FOCUSONBUTTONDOWN=0x1000
_TCS_FORCEICONLEFT=0x10
_TCS_FORCELABELLEFT=0x20
_TCS_HOTTRACK=0x40
_TCS_MULTILINE=0x200
_TCS_MULTISELECT=4
_TCS_OWNERDRAWFIXED=0x2000
_TCS_RAGGEDRIGHT=0x800
_TCS_RIGHT=2
_TCS_RIGHTJUSTIFY=0
_TCS_SCROLLOPPOSITE=1
_TCS_SINGLELINE=0
_TCS_TABS=0
_TCS_TOOLTIPS=0x4000
_TCS_VERTICAL=0x80

Markdown 格式