aardio 文档

win.ui.ctrl.mCtrl.grid 库模块帮助文档

mCtrlGridGeometryObject 成员列表

mCtrlGridGeometryObject.columnHeaderHeight

列标题高度

mCtrlGridGeometryObject.defColumnWidth

默认列宽

mCtrlGridGeometryObject.defRowHeight

默认行高

mCtrlGridGeometryObject.paddingHorz

水平边距

mCtrlGridGeometryObject.paddingVert

垂直边距

mCtrlGridGeometryObject.rowHeaderWidth

行标题宽度

mCtrlGridGeometryObject.update()

更新

mCtrlGridObject 成员列表

mCtrlGridObject._embedObject

嵌入OLE控件对象

返回对象:embedObject

mCtrlGridObject._parentForm

控件所在的父窗口(指win.form对象)

返回对象:winform

mCtrlGridObject.addCtrl

mCtrlGridObject.addCtrl(  
    button={ cls="button";text="button";left=33;top=32;right=126;bottom=81;autoResize=false }    
)

mCtrlGridObject.adjust

mCtrlGridObject.adjust = function( cx,cy,wParam ) {    

};

mCtrlGridObject.adjust()

调整窗口 - 自定义事件函数

mCtrlGridObject.bgcolor

获取或修改景颜色数值

mCtrlGridObject.bottom

底部坐标

mCtrlGridObject.capture

是否捕获全局鼠标消息

mCtrlGridObject.changeInterval(定时器ID,间隔时间,回调函数)

重新设置间隔时间或回调函数

mCtrlGridObject.className

运行时类名

mCtrlGridObject.clear(行总数,列总数)

清空表格,
不指定清空全部内容
| 1 清空普通单元格,
| 2 清空列标题
| 4 清空行标题

mCtrlGridObject.clearInterval(定时器ID)

删除定时器
参数如果为null则忽略不执行
否则定时器ID必须是setInterval函数或setTimeout函数的返回值

mCtrlGridObject.close()

关闭控件窗口

mCtrlGridObject.cls

设计时类名

mCtrlGridObject.color

获取或修改字体颜色数值

mCtrlGridObject.columnCount()

列总数

mCtrlGridObject.createEmbed("类名",容器对象)

嵌入COM控件,
参数@1也可以指定一个已存在的COM对象,
容器对象为可选参数,返回容器对象

创建失败会抛出异常

mCtrlGridObject.createEmbed()

返回对象:embedObject

mCtrlGridObject.createTable()

创建并返回 win.ui.ctrl.mCtrl.gridTable对象

返回对象:mCtrlGridTableObject

mCtrlGridObject.disabled

是否禁用

mCtrlGridObject.disabledText

指定文本时,禁用此控件,并显示指定文本,
指定为null时,启用此控件,并恢复控件之前的正常文本

mCtrlGridObject.geometry()

返回外观设置结构体,可调用返回对象的 update 函数更新

返回对象:mCtrlGridGeometryObject

mCtrlGridObject.getCell(行号,列号)

返回指定列的MC_TABLECELL结构体
行号省略表示列标题,列号省略表示行标题

mCtrlGridObject.getCellTextl(行号,列号)

返回指定列的文本
行号省略表示列标题,列号省略表示行标题

mCtrlGridObject.getClientRect()

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

返回对象:rectObject

mCtrlGridObject.getEditor()

返回编辑框

返回对象:editObject

mCtrlGridObject.getFont()

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

返回对象:logfontObject

mCtrlGridObject.getForm()

如果是窗体返回自身
如果是控件则返回_parentForm

返回对象:winform

mCtrlGridObject.getParent()

返回父窗口

mCtrlGridObject.getPos()

返回相对父窗口客户区的坐标,宽,高,
参数为true返回屏幕坐标,宽,高,
x,y,cx,cy=win.getPos(hwnd)

mCtrlGridObject.getRect()

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

mCtrlGridObject.getRect(true)

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

mCtrlGridObject.getRowHeight(行号)

获取行高度

mCtrlGridObject.getSelection()

返回选区

mCtrlGridObject.getTable()

返回控件绑定的数据表

返回对象:mCtrlGridTableObject

mCtrlGridObject.group()

将在此控件范围内的所有其他控件设为此控件的子窗口

mCtrlGridObject.height

高度

mCtrlGridObject.hide

控件是否隐藏

mCtrlGridObject.hwnd

控件句柄

mCtrlGridObject.id

控件ID

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

使窗口绘图区无效

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

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

mCtrlGridObject.isForm

窗体返回true,控件返回false

mCtrlGridObject.left

左侧坐标

mCtrlGridObject.messageOnly()

将窗口转换为message-only window
该窗口不可见,仅用于消息分发

mCtrlGridObject.modifyStyle(remove,add)

如果指定第三个参数,则使用此参数调用::SetWidnowPos

mCtrlGridObject.modifyStyleEx(remove,add)

如果指定第三个参数,则使用此参数调用::SetWidnowPos

mCtrlGridObject.msgErr()

显示错误提示框
请先调用win.dlg.message.install安装此函数

mCtrlGridObject.msgFrown()

显示皱眉图标提示框
请先调用win.dlg.message.install安装此函数

mCtrlGridObject.msgGreat()

显示竖大拇指图标提示框
请先调用win.dlg.message.install安装此函数

mCtrlGridObject.msgInfo()

显示提示框
请先调用win.dlg.message.install安装此函数

mCtrlGridObject.msgOk()

显示正确提示框
请先调用win.dlg.message.install安装此函数

mCtrlGridObject.msgSmile()

显示微笑图标提示框
请先调用win.dlg.message.install安装此函数

mCtrlGridObject.msgSorry()

显示倒竖大拇指图标提示框
请先调用win.dlg.message.install安装此函数

mCtrlGridObject.msgWarn()

显示警告提示框
请先调用win.dlg.message.install安装此函数

mCtrlGridObject.msgbox("字符串参数")

弹出对话框,可选用参数@2指定标题

mCtrlGridObject.msgboxErr("字符串参数")

弹出错误对话框,可选用参数@2指定标题

mCtrlGridObject.msgboxTest("字符串参数")

弹出询问对话框,可选用参数@2指定标题

mCtrlGridObject.onDestroy

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

mCtrlGridObject.onEditChanged

mCtrlGridObject.onEditChanged = function(text,row,col,dispInfo){  
    /*text为列文本,row为行号,col为列号,返回值指定是否允许更新列文本*/  
    return true;  
}

mCtrlGridObject.oncommand

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

mCtrlGridObject.onnotify

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

mCtrlGridObject.orphanWindow()

使控件脱离原来的窗口,可以显示在父窗口外面,
但仍然显示在原来的位置,继续如影随形的跟随父窗口移动或改变大小,
控件原来的固定边距等参数仍然有效

mCtrlGridObject.postMessage(msg,wParam,lParam)

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

mCtrlGridObject.publish("字符串参数",)

在窗口所在界面线程发布消息,
运行界面线程所有所有调用subscribe函数订阅此消息的函数,
可添加任意个触发参数

mCtrlGridObject.redraw()

刷新

mCtrlGridObject.redrawTransparent()

刷新
透明背景时请使用此函数替代redraw()

mCtrlGridObject.reduce(array,callback,debounce)

mCtrlGridObject.reduce(  
    {/*在这里指定要遍历处理每个元素的数组或表,  
并在回调函数中返回每次需要间隔的延时,以毫秒为单位,返回0或空值中断处理,  
回调参数为下一个元素的值和索引,处理完后回调参数为null,  
如果此时未返回null或0退出处理函数,将返回第一个元素继续遍历*/},  
    function(value,index){  
        if(value){  
            return 50  
        }  
    }   
)

mCtrlGridObject.reloadScale()

按设计时位置参数、重新调整控件位置以适应窗口当前缩放比例。
父窗口缩放时会自动执行此操作。
默认在启动窗口消息循环时会自适应调整所有控件。
所以在启动消息循环前添加控件不必调用此函数。

mCtrlGridObject.resize

发送WM_SIZE消息给窗口

mCtrlGridObject.resize(宽度,高度)

如果指定了参数则调整窗口大小,
无论是否实际调整窗口大小,发送WM_SIZE消息给窗口

mCtrlGridObject.resize(行总数,列总数,添加默认标题)

调整表格大小,
默认设置默认列标题为字母、行标题为数字

mCtrlGridObject.right

右侧坐标

mCtrlGridObject.rowCount()

行总数

mCtrlGridObject.saveScale()

根据控件当前位置、缩放比例,更新控件的设计时位置参数。
以避免下次窗口缩放自适应调整控件当前位置更改被清除,
控件所有调整位置的属性或成员函数已自动调用此函数。

mCtrlGridObject.sendMessage(msg,wParam,lParam)

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

mCtrlGridObject.setCell(行号,列号,MC_TABLECELL结构体)

设置格列,参数@3为MC_TABLECELL结构体
行号省略表示列标题,列号省略表示行标题

mCtrlGridObject.setCellAlign(行号,列号,对齐选项)

设置对齐选项,
参数@3应使用一个表指定对齐方式,
对齐表可用left,right,center指定水平对齐选项
可用top bottom,middle指定垂直对齐选项
指定的对齐选项字段值为真时使用该对齐方式

mCtrlGridObject.setCellText(行号,列号,文本)

设置列文本
行号省略表示列标题,列号省略表示行标题

mCtrlGridObject.setFocus()

设置焦点

mCtrlGridObject.setFont(指定字体)

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

mCtrlGridObject.setFont(混入字体属性)

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

mCtrlGridObject.setInterval(间隔时间,回调函数)

创建定时器
间隔时间以毫秒为单位

mCtrlGridObject.setParent(控件对象)

改变父窗口

mCtrlGridObject.setRect(rc)

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

mCtrlGridObject.setRect(rc,true)

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

mCtrlGridObject.setRedraw(false)

禁止重绘

mCtrlGridObject.setRedraw(true)

恢复重绘

mCtrlGridObject.setRowHeight(行号,高度)

设置行高度

mCtrlGridObject.setSelection()

设置选区

mCtrlGridObject.setTable(gridTalbe)

修改控件绑定的数据表,
参数应当是 win.ui.ctrl.mCtrl.gridTable对象

mCtrlGridObject.setTimeout(函数或代码,延时,其他附加参数)

推迟执行指定的函数或代码
此函数异步执行参数中指定的函数,不会阻塞当前代码继续执行,
延时参数是可选参数,以毫秒为单位,默认为0毫秒
可选用附加参数指定调用延时函数的实参
返回值为定时器ID

mCtrlGridObject.show(true)

显示控件

mCtrlGridObject.tabNext()

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

mCtrlGridObject.tabNext(移动焦点,是否反向)

获取下一个支持tab控制焦点的控件
参数@1为true会自动移动焦点到该控件
参数@2为true则获取上一个控件,否则获取下一个控件

mCtrlGridObject.text

控件文本

mCtrlGridObject.theme

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

mCtrlGridObject.threadCallable()

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

mCtrlGridObject.top

顶部坐标

mCtrlGridObject.translateAccelerator

mCtrlGridObject.translateAccelerator = function(msg){   
    /*返回是否快捷键*/  
}

mCtrlGridObject.translateCommand()

这个函数开启消息转发功能,
允许子窗口的_WM_COMMAND,_WM_CTLCOLORSTATIC等消息给父窗口,
使父窗体可以处理这些消息控制控件的外观、触发命令等

mCtrlGridObject.tryCreateEmbed("类名",容器对象)

嵌入COM控件,
参数@1也可以指定一个已存在的COM对象,
容器对象为可选参数,

成功返回容器对象,失败返回false,错误信息

mCtrlGridObject.tryCreateEmbed()

返回对象:embedObject

mCtrlGridObject.update()

重绘invalidate函数指定的区块

mCtrlGridObject.wait(等待函数,超时,延时间隔)

循环执行等待函数,并等待返回值
直到等待函数返回非空值,或存在第二个返回值,或当前窗口关闭
等待函数返回的值就是wait函数的返回值,
如果指定超时,超过指定毫秒时返回null,
除等待函数以外,所有参数可选

mCtrlGridObject.width

宽度

mCtrlGridObject.wndproc

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

win.ui.ctrl.mCtrl 成员列表

win.ui.ctrl.mCtrl.grid

MCtrl 表格控件

win.ui.ctrl.mCtrl.grid()

MCtrl 表格控件

返回对象:mCtrlGridObject

自动完成常量

_MC_GS_COLUMNHEADERALPHABETIC=0x2000
_MC_GS_COLUMNHEADERMASK=0x3000
_MC_GS_COLUMNHEADERNONE=0x3000
_MC_GS_COLUMNHEADERNORMAL=0
_MC_GS_COLUMNHEADERNUMBERED=0x1000
_MC_GS_COMPLEXSEL=0x300
_MC_GS_DOUBLEBUFFER=4
_MC_GS_EDITLABELS=0x80
_MC_GS_FOCUSEDCELL=0x40
_MC_GS_NOGRIDLINES=2
_MC_GS_NOSEL=0
_MC_GS_NOTABLECREATE=1
_MC_GS_OWNERDATA=8
_MC_GS_RECTSEL=0x200
_MC_GS_RESIZABLECOLUMNS=0x10
_MC_GS_RESIZABLEROWS=0x20
_MC_GS_ROWHEADERALPHABETIC=0x8000
_MC_GS_ROWHEADERMASK=0xC000
_MC_GS_ROWHEADERNONE=0xC000
_MC_GS_ROWHEADERNORMAL=0
_MC_GS_ROWHEADERNUMBERED=0x4000
_MC_GS_SHOWSELALWAYS=0x400
_MC_GS_SINGLESEL=0x100

Markdown 格式