[已解决]如何设置日期控件默认值为空
本帖最后由 biwfmm 于 2012-4-22 17:46 编辑GUICtrlCreateDate控件创建时默认时间为当天的。想默认为空值。 既然为空为什么不直接用编辑框呢 俺还想再问一下,我这里用日期控件是为了能方便选择日期,但是还需要启动时为空。怎么弄哪? 不知道楼主有没有解决这个问题,现在我也遇到这个问题,有没有解决的方法,谢谢! GUICtrlCreateDate ( "文本", 左侧, 顶部 [, 宽度 [, 高度 [, 样式 [, 扩展样式]]]] )
样式:$DTS_SHOWNONE使控件能够接受 " 无日期 " 作为有效的选择状态.
试了加上这个参数后日期控件前面会有一个多选框,不勾选的话日期控件为灰色,勾选后日期激活可以输入日期
即使没有勾选,使用GUICtrlRead还是会获取到日期
我也想知道如何默认为空,获取不到数据。勾上就能获取到数据! 最近我也有遇到这个问题,解决思路是 把日期控件缩小,只显示下拉箭头,选择日期后填写到旁边的 Input。#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$gui = GUICreate("背景窗口", 400, 100)
GUISetOnEvent($GUI_EVENT_CLOSE, "_GUI")
Opt("GUIOnEventMode", 1) ;切换至 事件模式
Local $Search_X = 30, $Search_Y = 20, $lE = 20
$Input_W = 80
GUICtrlCreateLabel("日期" & ", 从:", $Search_X, $Search_Y, $Input_W, 16)
GUICtrlSetColor(-1, 0x666666)
GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
$Orders_StartDate_Input = GUICtrlCreateInput("", $Search_X, $Search_Y+$lE, $Input_W, 24)
$Orders_StartDate = GUICtrlCreateDate(@YEAR & "/" & @MON & "/" & @MDAY, $Search_X+$Input_W, $Search_Y+$lE, 12, 24, 0x20)
GUICtrlSetFont(-1, 1)
GUICtrlSetOnEvent(-1, "_GUI")
$Search_X += $Input_W+$lE
$Input_W = 80
GUICtrlCreateLabel("到:", $Search_X, $Search_Y, $Input_W, 16)
GUICtrlSetColor(-1, 0x666666)
GUICtrlSetBkColor(-1, $GUI_BKCOLOR_TRANSPARENT)
$Orders_EndDate_Input = GUICtrlCreateInput("", $Search_X, $Search_Y+$lE, $Input_W, 24)
$Orders_EndDate = GUICtrlCreateDate("", $Search_X+$Input_W, $Search_Y+$lE, 12, 24, 0x20)
GUICtrlSetFont(-1, 1)
GUICtrlSetOnEvent(-1, "_GUI")
GUISetState(@SW_SHOW)
While 1
WEnd
Func _GUI()
Switch @GUI_CtrlId
Case $Orders_StartDate
$StartDate = GUICtrlRead(@GUI_CtrlId)
GUICtrlSetData($Orders_StartDate_Input, $StartDate)
Case $Orders_EndDate
$StartDate = GUICtrlRead(@GUI_CtrlId)
GUICtrlSetData($Orders_EndDate_Input, $StartDate)
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
EndFunc
页:
[1]