Foxtable(狐表)用户栏目专家坐堂 → 有关e.Sender.WriteValue()问题。(已解决)


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

主题:有关e.Sender.WriteValue()问题。(已解决)

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/5/18 10:01:00 [显示全部帖子]

例子?


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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/5/18 10:28:00 [显示全部帖子]

收到,有空我看看

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/5/18 14:42:00 [显示全部帖子]

你可以先删除e.Sender.WriteValue,大部分人从来不用这个东东。

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/5/18 14:51:00 [显示全部帖子]

我看了,这个问题是无解的,你只能不这么用。

输入1.,执行writevalue,结果就会变为1,这是必然的。

[此贴子已经被作者于2010-5-18 14:51:10编辑过]

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/5/18 15:23:00 [显示全部帖子]

将代码这么改一下:

 

if Not e.Sender.Text.EndsWith(".") Then
   e.Sender.WriteValue()
End If

 

就能输入小数点了


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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/5/19 10:13:00 [显示全部帖子]

下次不会这样了

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/5/20 10:40:00 [显示全部帖子]

你可以再加一个条件,比较控件的值和列中的当前值,如果不等,才WriteValue。

注意比较的时候,要用控件的Text属性,转换为数值后才和列的当前值比较。

 

[此贴子已经被作者于2010-5-20 10:42:11编辑过]

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/5/20 11:24:00 [显示全部帖子]

16楼的办法完全可行。


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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/5/20 11:45:00 [显示全部帖子]

满足两个条件:

1、text不是以.结尾

2、text转换为数值后和表中的当前值不等,才WriteValue

 

大概就是这样:

 

Dim txt As String = e.Sender.Text

Dim Val As Double = Val(text)

if txt.EndsWith(".")= False Andalso Val <> Tables("XXX").Current("YYY") Then
   e.Sender.WriteValue()
End If

 

这个不复杂吧?


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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/5/26 12:22:00 [显示全部帖子]

自己动手,丰衣足食

图片点击可在新窗口打开查看


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