# win.ui.ctrl.datetimepick 库模块帮助文档

## win.ui.ctrl 成员列表 <a id="win.ui.ctrl" href="#win.ui.ctrl">&#x23;</a>

### win.ui.ctrl.datetimepick() <a id="win.ui.ctrl.datetimepick" href="#win.ui.ctrl.datetimepick">&#x23;</a>
时间控件  

[返回对象:datetimepickObject](#datetimepickObject)

## datetimepickObject 成员列表 <a id="datetimepickObject" href="#datetimepickObject">&#x23;</a>

### datetimepickObject._parentForm <a id="datetimepickObject._parentForm" href="#datetimepickObject._parentForm">&#x23;</a>
返回创建控件的容器窗口（win.form对象），所有窗口控件都拥有此只读属性。  
对于使用窗体设计器创建的窗口，也就是返回设计时窗体容器。  

即使子窗口移除子窗口样式、更改父子关系，或以 orphanWindow显示，  
控件的 _parentForm 始终都不会改变  

[返回对象:winform](https://www.aardio.com/zh-cn/docs/library-reference/win/ui/_.html#winform)

### datetimepickObject.bottom <a id="datetimepickObject.bottom" href="#datetimepickObject.bottom">&#x23;</a>
底部坐标

### datetimepickObject.capture <a id="datetimepickObject.capture" href="#datetimepickObject.capture">&#x23;</a>
是否捕获全局鼠标消息

### datetimepickObject.checked <a id="datetimepickObject.checked" href="#datetimepickObject.checked">&#x23;</a>
或取设置控件选中状态  
创建控件的参数中指定style=_DTS_SHOWNONE

### datetimepickObject.className <a id="datetimepickObject.className" href="#datetimepickObject.className">&#x23;</a>
运行时类名

### datetimepickObject.clientRect <a id="datetimepickObject.clientRect" href="#datetimepickObject.clientRect">&#x23;</a>
获取控件客户区块位置(::RECT结构体)

### datetimepickObject.close() <a id="datetimepickObject.close" href="#datetimepickObject.close">&#x23;</a>
关闭控件窗口

### datetimepickObject.cls <a id="datetimepickObject.cls" href="#datetimepickObject.cls">&#x23;</a>
设计时类名

### datetimepickObject.disabled <a id="datetimepickObject.disabled" href="#datetimepickObject.disabled">&#x23;</a>
是否禁用

### datetimepickObject.getClientRect() <a id="datetimepickObject.getClientRect" href="#datetimepickObject.getClientRect">&#x23;</a>
控件客户区块位置(::RECT结构体)  

[返回对象:rectObject](https://www.aardio.com/zh-cn/docs/library-reference/global/_.html#rectObject)

### datetimepickObject.getFont() <a id="datetimepickObject.getFont" href="#datetimepickObject.getFont">&#x23;</a>
控件字体(::LOGFONT结构体)  

[返回对象:logfontObject](#logfontObject)

### datetimepickObject.getParent() <a id="datetimepickObject.getParent" href="#datetimepickObject.getParent">&#x23;</a>
返回父窗口  

[返回对象:staticObject](https://www.aardio.com/zh-cn/docs/library-reference/win/ui/ctrl/static.html#staticObject)

### datetimepickObject.getPos() <a id="datetimepickObject.getPos" href="#datetimepickObject.getPos">&#x23;</a>
返回相对坐标,宽,高  
x,y,cx,cy=win.getPos(hwnd)

### datetimepickObject.getRange() <a id="datetimepickObject.getRange" href="#datetimepickObject.getRange">&#x23;</a>
返回两个time()对象:时间范围下限,时间范围上限  
如果未调用setRange()指定上限或下限,相应值返回为空

### datetimepickObject.getRect() <a id="datetimepickObject.getRect" href="#datetimepickObject.getRect">&#x23;</a>
控件区块位置(::RECT结构体)

### datetimepickObject.getRect(true) <a id="datetimepickObject.getRect" href="#datetimepickObject.getRect">&#x23;</a>
控件屏幕区块位置(::RECT结构体)

### datetimepickObject.height <a id="datetimepickObject.height" href="#datetimepickObject.height">&#x23;</a>
高度

### datetimepickObject.hwnd <a id="datetimepickObject.hwnd" href="#datetimepickObject.hwnd">&#x23;</a>
控件句柄

### datetimepickObject.id <a id="datetimepickObject.id" href="#datetimepickObject.id">&#x23;</a>
控件ID

### datetimepickObject.invalidate(/*可选使用::RECT()对象指定客户区*/) <a id="datetimepickObject.invalidate(/*可选使用::RECT" href="#datetimepickObject.invalidate(/*可选使用::RECT">&#x23;</a>
使窗口绘图区无效

### datetimepickObject.invalidate(/*可选使用::RECT()对象指定客户区*/,0) <a id="datetimepickObject.invalidate(/*可选使用::RECT" href="#datetimepickObject.invalidate(/*可选使用::RECT">&#x23;</a>
使窗口绘图区无效  
不刷新背景

### datetimepickObject.left <a id="datetimepickObject.left" href="#datetimepickObject.left">&#x23;</a>
左侧坐标

### datetimepickObject.modifyStyle(remove,add,swpFlags) <a id="datetimepickObject.modifyStyle" href="#datetimepickObject.modifyStyle">&#x23;</a>
修改窗口样式,所有参数都是可选参数,  
@remove 用数值指定要移除的样式,可使用 _WS_ 前缀的常量  
@add 用数值指定要添加的样式,可使用 _WS_ 前缀的常量  
@swpFlags 可选用数值指定调整窗口选项,可使用 _SWP_ 前缀的常量  
如果指定了 @swpFlag ,则使用该参数调用::SetWindowPos  
细节请参考 win.modifyStyle 函数源码

### datetimepickObject.modifyStyleEx(remove,add,swpFlags) <a id="datetimepickObject.modifyStyleEx" href="#datetimepickObject.modifyStyleEx">&#x23;</a>
修改窗口扩展样式,所有参数都是可选参数,  
@remove 用数值指定要移除的样式,可使用 _WS_EX_ 前缀的常量  
@add 用数值指定要添加的样式,可使用 _WS_EX_ 前缀的常量  
@swpFlags 可选用数值指定调整窗口选项,可使用 _SWP_ 前缀的常量  
如果指定了 @swpFlag ,则使用该参数调用::SetWindowPos  
细节请参考 win.modifyStyle 函数源码

### datetimepickObject.postMessage(msg,wParam,lParam) <a id="datetimepickObject.postMessage" href="#datetimepickObject.postMessage">&#x23;</a>
投递窗口消息到消息队列中  
此函数用法请参考 ::User32.PostMessage

### datetimepickObject.redraw() <a id="datetimepickObject.redraw" href="#datetimepickObject.redraw">&#x23;</a>
刷新

### datetimepickObject.right <a id="datetimepickObject.right" href="#datetimepickObject.right">&#x23;</a>
右侧坐标

### datetimepickObject.sendMessage(msg,wParam,lParam) <a id="datetimepickObject.sendMessage" href="#datetimepickObject.sendMessage">&#x23;</a>
发送窗口消息  
此函数用法请参考 ::User32.SendMessage

### datetimepickObject.setFocus() <a id="datetimepickObject.setFocus" href="#datetimepickObject.setFocus">&#x23;</a>
设置焦点

### datetimepickObject.setFont(指定字体) <a id="datetimepickObject.setFont" href="#datetimepickObject.setFont">&#x23;</a>
指定LOGFONT字体对象,或逻辑字体句柄

### datetimepickObject.setFont(混入字体属性) <a id="datetimepickObject.setFont" href="#datetimepickObject.setFont">&#x23;</a>

```aardio
datetimepickObject.setFont(point=10;name="宋体");
```

### datetimepickObject.setFormat("yyyy-MM-dd hh:m:s dddd") <a id="datetimepickObject.setFormat" href="#datetimepickObject.setFormat">&#x23;</a>
使用无百分号风格时间格式串，详细说明请参考 _DTM_SETFORMAT 消息文档。  
除了空格和标点符号不需要用引号包围，  
其他非格式化字符（例如中文字符或英文字母）必须包含在单引号中。

### datetimepickObject.setParent(控件对象) <a id="datetimepickObject.setParent" href="#datetimepickObject.setParent">&#x23;</a>
改变父窗口

### datetimepickObject.setPos(x坐标,y坐标,宽,高,插入位置,参数) <a id="datetimepickObject.setPos" href="#datetimepickObject.setPos">&#x23;</a>
调整窗口位置或排序,所有参数可选  
同时指定x,y坐标则移动位置  
同时指定宽高则改变大小  
指定插入位置(句柄或_HWND前缀常量)则调整Z序

### datetimepickObject.setRange(时间下限,时间上限) <a id="datetimepickObject.setRange" href="#datetimepickObject.setRange">&#x23;</a>
设置时间范围,参数为time()对象  
可省略其中一个参数,仅指定下限或仅指定上限

### datetimepickObject.setRect(rc) <a id="datetimepickObject.setRect" href="#datetimepickObject.setRect">&#x23;</a>
设置控件区块位置(::RECT结构体)

### datetimepickObject.setRect(rc,true) <a id="datetimepickObject.setRect" href="#datetimepickObject.setRect">&#x23;</a>
设置控件屏幕区块位置(::RECT结构体)

### datetimepickObject.show(true) <a id="datetimepickObject.show" href="#datetimepickObject.show">&#x23;</a>
显示控件

### datetimepickObject.text <a id="datetimepickObject.text" href="#datetimepickObject.text">&#x23;</a>
控件文本,也就是格式化以后实际显示的时间字符串

### datetimepickObject.theme <a id="datetimepickObject.theme" href="#datetimepickObject.theme">&#x23;</a>
外观主题,例如  
winform.button.theme = "Explorer"  
winform.button.theme = false

### datetimepickObject.time <a id="datetimepickObject.time" href="#datetimepickObject.time">&#x23;</a>
获取或设置时间，值为 time 对象。  
写入属性值时支持可使用 time 构造函数转换为时间对象的参数。  
在读取此属性值时，保留上次设置此属性的时间对象使用的 format 字段  

[返回对象:timeObject](https://www.aardio.com/zh-cn/docs/library-reference/time/_.html#timeObject)

### datetimepickObject.top <a id="datetimepickObject.top" href="#datetimepickObject.top">&#x23;</a>
顶部坐标

### datetimepickObject.update() <a id="datetimepickObject.update" href="#datetimepickObject.update">&#x23;</a>
重绘invalidate函数指定的区块

### datetimepickObject.value <a id="datetimepickObject.value" href="#datetimepickObject.value">&#x23;</a>
获取或设置时间，值为 time 对象。  
写入属性值时支持可使用 time 构造函数转换为时间对象的参数。  
在读取此属性值时，保留上次设置此属性的时间对象使用的 format 字段  

[返回对象:timeObject](https://www.aardio.com/zh-cn/docs/library-reference/time/_.html#timeObject)

### datetimepickObject.visible <a id="datetimepickObject.visible" href="#datetimepickObject.visible">&#x23;</a>
当前控件窗口是否显示。  
仅检查当前窗口的可见性样式（窗口 是否具有 _WS_VISIBLE 样式）。  
不考虑父窗口是否可见，不考虑是否被其他窗口遮挡。  
如果需要同时判断父窗口的可见性，应改用 win.isVisible 函数。

### datetimepickObject.width <a id="datetimepickObject.width" href="#datetimepickObject.width">&#x23;</a>
宽度

## datetimepickObject 事件列表 <a id="datetimepickObjectEvent" href="#datetimepickObjectEvent">&#x23;</a>

### datetimepickObject.onDateTimeChanged <a id="datetimepickObject.onDateTimeChanged" href="#datetimepickObject.onDateTimeChanged">&#x23;</a>

```aardio
datetimepickObject.onDateTimeChanged = function(dateTime,none){
	/*控件变更值回调此函数,  
dateTime 为变更后的 time 对象,  
none 为 1 则控件值为空，否则为有效时间*/	
}
```

### datetimepickObject.onFocusGot <a id="datetimepickObject.onFocusGot" href="#datetimepickObject.onFocusGot">&#x23;</a>

```aardio
datetimepickObject.onFocusGot = function(){
	/*控件得到焦点回调此函数*/	
}
```

### datetimepickObject.onFocusLost <a id="datetimepickObject.onFocusLost" href="#datetimepickObject.onFocusLost">&#x23;</a>

```aardio
datetimepickObject.onFocusLost = function(){
	/*控件失去焦点回调此函数*/
}
```

### 自动完成常量
_DTM_GETMCFONT=0x100A  
_DTM_GETMONTHCAL=0x1008  
_DTM_SETMCFONT=0x1009  
_DTN_CLOSEUP=0xFFFFFD0F  
_DTN_DATETIMECHANGE=0xFFFFFD09  
_DTN_DROPDOWN=0xFFFFFD0E  
_DTN_FIRST2=0xFFFFFD0F  
_DTN_WMKEYDOWN=0xFFFFFD0B  
_DTS_SHOWNONE=2  
