关于DTPicker控件值的问题

dannicklee 2004-09-10 03:51:15
对DTPicker控件的值进行格式转化,假如DTPicker1.value=2004/01/01,
cstr(DTPicker1.value)的值应该是多少?我拿转换完的值和"2004/01/01"作比较,为什么被判断为不相等?
...全文
229 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
laozhaoskinny 2004-09-14
  • 打赏
  • 举报
回复
代码没有什么问题,关键是使用的DTPicker1.Value值"2004/01/01"的格式是和系统的[时区设置]相关的,还有可能是比如"2004-1-1"等,确实要看该计算机的设置。
leolan 2004-09-14
  • 打赏
  • 举报
回复
//用format进行格式设定我也试过,还是判断不相等。
不可能呀,你是怎麼試的?

Option Explicit

Private Sub Form_Load()
DTPicker1.Value = "2004/01/01"
MsgBox Format$(DTPicker1.Value, "YYYY/MM/DD") = "2004/01/01" 'True
End Sub
dannicklee 2004-09-14
  • 打赏
  • 举报
回复
正是因为测试了cstr(dtpicker1.value)="2004/01/01"所以我才困惑!
dannicklee 2004-09-13
  • 打赏
  • 举报
回复
up
zhujiechang 2004-09-13
  • 打赏
  • 举报
回复
dtpicker1.value是日期型.里面可能含有小时或者分等其他日期型的数据.而且dtpicker1.value的值取决于系统设置.可以通过控制面版进行调整显示的格式.所以你直接这样转换cstr得到什么,你自己可以测试啊.是否有空格等等?
dannicklee 2004-09-13
  • 打赏
  • 举报
回复
还是没明白。
cstr(dtpicker1.value)转换结果是个字符串吧?"2004/01/01"也是个字符串吧?为什么类型不相同??????
to leolan:用format进行格式设定我也试过,还是判断不相等。
dannicklee 2004-09-13
  • 打赏
  • 举报
回复
还是没明白为什么类型不同?
lyxhappy 2004-09-13
  • 打赏
  • 举报
回复
类型不同,得不到你想要的结果
aohan 2004-09-12
  • 打赏
  • 举报
回复
cstr()将日期转化为字符串,而dtpicker.value为日期型,所有不会相等
Programer_Zjw 2004-09-11
  • 打赏
  • 举报
回复
leolan说的对。 设置为一定的格式后在比较。
啊维 2004-09-11
  • 打赏
  • 举报
回复
类型都不相同,怎么会是相等?

又不是数值
XmagicX 2004-09-10
  • 打赏
  • 举报
回复
拿string 和date比较当然不等
leolan 2004-09-10
  • 打赏
  • 举报
回复
試試 MsgBox ForMat$(DTPicker1.value,"YYYY/MM/DD") = "2004/01/01"
dannicklee 2004-09-10
  • 打赏
  • 举报
回复
有没有人知道呀?多帮忙呀!

1,453

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧