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


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

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

帅哥哟,离线,有人找我吗?
唐尸三摆手
  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


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/12/17 14:48:00 [只看该作者]

If da isnot nothing AndAlso db isnot nothing  AndAlso da<db Then

 回到顶部
帅哥哟,离线,有人找我吗?
唐尸三摆手
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | 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编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/12/17 15:12:00 [只看该作者]

不输入值的时候,messagebox.show(da),看看值等于多少,然后通过比较这个值,判断是否输入了


 回到顶部
帅哥哟,离线,有人找我吗?
唐尸三摆手
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | 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吗,有点不明白


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/12/17 15:39:00 [只看该作者]

日期不可能为nothing,字符可以,你可以看看:

http://help.foxtable.com/topics/0395.htm

 

 

你可以给日期框设置一个初始值,例如1900-1-1,来比较这个值看看是否已经输入。

[此贴子已经被作者于2010-12-17 15:40:41编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/12/17 16:01:00 [只看该作者]

我给菜单的日期输入框加一个ValueIsNull属性算了,用于判断是否输入了值。

 回到顶部