Foxtable(狐表)用户栏目专家坐堂 → 请教日期型菜单控件的使用


  共有11336人关注过本帖树形打印复制链接

主题:请教日期型菜单控件的使用

帅哥哟,离线,有人找我吗?
唐尸三摆手
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:928 积分:7769 威望:0 精华:13 注册:2008/9/1 11:58:00
请教日期型菜单控件的使用  发帖心情 Post By:2010/12/17 14:26:00 [显示全部帖子]

Dim da As Date=RibbonTabs("功能区1").Groups("功能组1").Items("日期输入框1").value
Dim db As Date=RibbonTabs("功能区1").Groups("功能组1").Items("日期输入框2").value
If da isnot null AndAlso db is notnull  AndAlso da<db Then       '如果两个日期控件均填写了日期,而且开始日期小于截止日期,那么

执行的代码.........

end if

 

 

请教红色部分如何才能做到最标准书写方式


 回到顶部
帅哥哟,离线,有人找我吗?
唐尸三摆手
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:928 积分:7769 威望:0 精华:13 注册:2008/9/1 11:58:00
  发帖心情 Post By:2010/12/17 15:06:00 [显示全部帖子]

一、老大请看这段代码,假定菜单有两个日期控件和一个按钮,按钮代码如下:

Dim da As Date=RibbonTabs("功能区1").Groups("功能组1").Items("日期输入框1").value
Dim db As Date=RibbonTabs("功能区1").Groups("功能组1").Items("日期输入框2").value
If da isnot Nothing AndAlso db isnot Nothing  AndAlso da<db Then
    MessageBox.Show("ok!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
Else
    MessageBox.Show("日期填写不全或结束日期早于开始日期","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
End If

 在两个日期控件均无数据的前提下,点击按钮后报错:

 
图片点击可在新窗口打开查看此主题相关图片如下:screenshot21.jpg
图片点击可在新窗口打开查看

然后将代码改为:

Dim da As String=RibbonTabs("功能区1").Groups("功能组1").Items("日期输入框1").value
Dim db As String=RibbonTabs("功能区1").Groups("功能组1").Items("日期输入框2").value

If da isnot Nothing AndAlso db isnot Nothing  AndAlso da<db Then
    MessageBox.Show("ok!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
Else
    MessageBox.Show("日期填写不全或结束日期早于开始日期","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
End If

点击按钮提示"日期填写不全或结束日期早于开始日期",OK。(这是预定的结果)

 

 

 

二、然后我又换了个方式:

Dim da As date=RibbonTabs("功能区1").Groups("功能组1").Items("日期输入框1").value
Dim db As date=RibbonTabs("功能区1").Groups("功能组1").Items("日期输入框2").value
If da is Nothing Or db is Nothing Then
    MessageBox.Show("日期填写不全!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
Else If da>db Then
    MessageBox.Show("结束日期不得早于开始日期!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
Else
    MessageBox.Show("ok!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
End If

继续报错
 


图片点击可在新窗口打开查看此主题相关图片如下:screenshot22.jpg
图片点击可在新窗口打开查看

 

然后同样更改代码为:

Dim da As String=RibbonTabs("功能区1").Groups("功能组1").Items("日期输入框1").value
Dim db As String=RibbonTabs("功能区1").Groups("功能组1").Items("日期输入框2").value

If da is Nothing Or db is Nothing Then
    MessageBox.Show("日期填写不全!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
Else If da>db Then
    MessageBox.Show("结束日期不得早于开始日期!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
Else
    MessageBox.Show("ok!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
End If

明明日期控件没有内容,为何执行后提示


图片点击可在新窗口打开查看此主题相关图片如下:screenshot23.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2010-12-17 15:13:18编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
唐尸三摆手
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:928 积分:7769 威望:0 精华:13 注册:2008/9/1 11:58:00
  发帖心情 Post By:2010/12/17 15:18:00 [显示全部帖子]

messagebox.show(da)结果显示2010-12-17

看来日期控件即使不输入内容也是默认当前日期了

 

另外此处

Dim da As String=RibbonTabs("功能区1").Groups("功能组1").Items("日期输入框1").value
Dim db As String=RibbonTabs("功能区1").Groups("功能组1").Items("日期输入框2").value

 

一定要用string而不能用date吗,有点不明白


 回到顶部