我要按时间进行查询,通过DTPicker来让用户选择开始和结束时间,然后查询这个时间段内的纪录。
但需要能选择日期,以及具体的时间(时分秒)。
我把dtp1的format属性设为1-dtpshortdate来进行日期的选择,dtp2的format属性设为2-dtptime来实现时分秒的输入。
但出来的值,dtp1带有时分秒00:00:00,而dtp2带有日期,怎样才能去掉dtp1的时分秒和dtp2的日期,把它们合到一起?
或者有其它方法?
但需要能选择日期,以及具体的时间(时分秒)。
我把dtp1的format属性设为1-dtpshortdate来进行日期的选择,dtp2的format属性设为2-dtptime来实现时分秒的输入。
但出来的值,dtp1带有时分秒00:00:00,而dtp2带有日期,怎样才能去掉dtp1的时分秒和dtp2的日期,把它们合到一起?
或者有其它方法?
将dtp2设置成2-dtptime
取用户设置的日期:dtp1.value
取用户设置的时间:
dim timeStr,hourStr,minuteStr,SecondStr as string
if hour(dtp2.value)<10 then
hourStr="0" & hour(dtp2.value)
else
hourStr=hour(dtp2.value)
endif
if Minute(dtp2.value)<10 then
minuteStr="0" & Minute(dtp2.value)
else
minuteStr=Minute(dtp2.value)
endif
if Second(dtp2.value)<10 then
secondStr="0" & Second(dtp2.value)
else
secondStr=Second(dtp2.value)
endif
timestr=hourstr & ":" & minuteStr & ":" & secondStr
b = Format(DTP2.Value, "hh:mm:ss") '显示时间
MsgBox a
MsgBox b
MsgBox a & " " & b
DTPicker1.Format = dtpCustom
DTPicker1.CustomFormat = "yyyy年MM月DD日 hh:mm:ss"
End Sub
DTPicker1的值不需要转换,本身就是日期时间格式(可以同时包括年月日时分秒)。
设置dtpicker的格式为3-dtpCustom
自定义格式为:yyyy-MM-dd hh:mm:ss
就可以用一个控件取出日期和时间了。
取日期用:
dtpicker1.value
取时间用:
dtpicker1.hour
dtpicker1.minus
dtpicker1.secord
取时间:b = Format(DTP2.Value, "hh:mm:ss") '显示时间
MsgBox a
MsgBox b
完整时间 a & "" & b
MsgBox a & " " & b
自定义格式为:yyyy-MM-dd hh:mm:ss
就可以用一个控件取出日期和时间了。Format(dtpInTime, "yyyy-MM-dd hh:mm:ss")在VB中测试过,没问题
控件包中的True DBInput Pro 8.0
至少是我目前见到的最好的输入控制控件之一。
好象www.ttdown.com有下载