Foxtable(狐表)用户栏目专家坐堂 → [求助]关于清除窗口中ComboBox值的代码


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

主题:[求助]关于清除窗口中ComboBox值的代码

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


加好友 发短信
等级:五尾狐 帖子:1104 积分:8956 威望:0 精华:0 注册:2014/10/25 11:24:00
[求助]关于清除窗口中ComboBox值的代码  发帖心情 Post By:2014/12/7 22:34:00 [只看该作者]

清除文本类型的ComboBox值时,用e.Form.Controls("ComboBox_牌号").Value = Nothing
但清除双精度与逻辑刑的ComboBox值时,用了上述代码后返回:无法在 System.Double 和 System.String 上执行“=”操作
请问老师我应该如何写代码才能正确的清除双精度与逻辑型的ComboBox值

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/12/7 22:49:00 [只看该作者]

e.Form.Controls("ComboBox_牌号").Text = Nothing
[此贴子已经被作者于2014-12-7 22:49:04编辑过]

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


加好友 发短信
等级:五尾狐 帖子:1104 积分:8956 威望:0 精华:0 注册:2014/10/25 11:24:00
  发帖心情 Post By:2014/12/7 22:59:00 [只看该作者]

还是出错,我有个清除筛选的按钮,在这里写了如下代码:
e.Form.Controls("ComboBox_公司").Value = Nothing
e.Form.Controls("ComboBox_牌号").Value = Nothing
e.Form.Controls("ComboBox_厚度").Text = Nothing
e.Form.Controls("ComboBox_审核").Text = Nothing
Tables("原料采购合同查询主窗口_Table_原料采购_副本").Filter=""

厚度在表上是双精度类型,审核是逻辑型,我在厚度中选了值后进行筛选,这一步还是正常的,但点了清除筛选按钮后,就弹出:无法在 System.Double 和 System.String 上执行“=”操作。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/12/7 23:24:00 [只看该作者]

 做个例子上来,应该是没问题的,可能触发了控件的 TextChanged 或 ValueChanged 事件了。

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


加好友 发短信
等级:五尾狐 帖子:1104 积分:8956 威望:0 精华:0 注册:2014/10/25 11:24:00
  发帖心情 Post By:2014/12/8 12:25:00 [只看该作者]

是的啊,是与 TextChanged 或 ValueChanged 事件有关。
我在一个窗口中有四个ComboBox控件,分别是公司(文本)、牌号(文本)、厚度(双精度)及审核(逻辑),操作流程如下:
通过选择公司的下拉项目,选择一个公司后表进行了按公司筛选,执行正确;
这时再对厚度进行筛选,也是执行正确;
再对公司进行筛选,就会弹出“无法在 System.Double 和 System.String 上执行“=”操作。”
原因应该出在以下代码中:
公司ComboBox的ValueChanged中有以下代码:
e.Form.Controls("ComboBox_牌号").Value = Nothing
e.Form.Controls("ComboBox_厚度").Text = Nothing
e.Form.Controls("ComboBox_审核").Text = Nothing
Tables("原料采购合同查询主窗口_Table_原料采购_副本").Filter="[公司] = '" & e.Form.Controls("ComboBox_公司").value & "'"

厚度ComboBox的ValueChanged中有以下代码:
e.Form.Controls("ComboBox_公司").Value = Nothing
e.Form.Controls("ComboBox_牌号").Value = Nothing
e.Form.Controls("ComboBox_审核").Text = Nothing
Tables("原料采购合同查询主窗口_Table_原料采购_副本").Filter="[厚度] = '" & e.Form.Controls("ComboBox_厚度").value & "'"

我在上面的代码中用= Nothing的目的是清除之前筛选时选择的文字,例如选择一个公司筛选后,这个公司名就一直在ComboBox文字框中了,再用其他ComboBox筛选时,之前的这个公司ComboBox中文字一直会在,我就是想用上面的代码清除掉其他ComboBox框中的文字。

问题应该就出在上面的代码中,请老师们指正,谢谢!
[此贴子已经被作者于2014-12-8 12:26:34编辑过]

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


加好友 发短信
等级:五尾狐 帖子:1104 积分:8956 威望:0 精华:0 注册:2014/10/25 11:24:00
  发帖心情 Post By:2014/12/8 12:58:00 [只看该作者]

刚又做了下测试,我把四个ComboBox中“= Nothing”这些代码全部去掉,在清除筛选的按钮中写下如下代码:
e.Form.Controls("ComboBox_公司").Value = Nothing
e.Form.Controls("ComboBox_牌号").Value = Nothing
e.Form.Controls("ComboBox_厚度").Text = Nothing
e.Form.Controls("ComboBox_审核").Text = Nothing
Tables("原料采购合同查询主窗口_Table_原料采购_副本").Filter=""

我如果对厚度进行了筛选,再点清除筛选按钮把筛选全部关闭,之后再点厚度ComboBox就会弹出:无法在 System.Double 和 System.String 上执行“=”操作。同理,用上面流程点审核ComboBox,就会弹出:无法在 System.Boolean 和 System.String 上执行“=”操作。

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


加好友 发短信
等级:五尾狐 帖子:1104 积分:8956 威望:0 精华:0 注册:2014/10/25 11:24:00
  发帖心情 Post By:2014/12/8 13:28:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:combobox故障.rar

我做了个例子上传上来了,请老师看下。进行以下操作会出现问题:

1、筛选公司

2、筛选厚度

3、筛选公司

4、再进行筛选厚度时弹出出错信息:无法在 System.Double 和 System.String 上执行“=”操作。


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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2014/12/8 14:15:00 [只看该作者]

1
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:combobox故障.foxdb


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


加好友 发短信
等级:五尾狐 帖子:1104 积分:8956 威望:0 精华:0 注册:2014/10/25 11:24:00
  发帖心情 Post By:2014/12/8 19:54:00 [只看该作者]

附件我下载看了,是可以用了,但我的代码错在哪里呢?请指导一下,谢谢!

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/12/8 20:14:00 [只看该作者]

 你可以输出两者的代码对比一下

 

http://www.foxtable.com/help/topics/1987.htm

 


 回到顶部
总数 13 1 2 下一页