Foxtable(狐表)用户栏目专家坐堂 → [求助] 如何将文本型的控件值转为整数?


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

主题:[求助] 如何将文本型的控件值转为整数?

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


加好友 发短信
等级:童狐 帖子:274 积分:2960 威望:0 精华:0 注册:2011/9/19 0:18:00
[求助] 如何将文本型的控件值转为整数?  发帖心情 Post By:2014/6/1 23:28:00 [只看该作者]

在窗口有一文本型控件"新增",我想将其中的值当做整数定义变量用于其他,比如某表新增行数:

Dim addrows As WinForm.TextBox = e.Form.Controls("新增")
Tables("表名").AddNew(addrows)

但提示 WinForm.TextBox 无法转为 Integer ,有什么办法解决?


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


加好友 发短信
等级:童狐 帖子:274 积分:2960 威望:0 精华:0 注册:2011/9/19 0:18:00
  发帖心情 Post By:2014/6/2 0:27:00 [只看该作者]

自行解决了:

Dim addrows As WinForm.TextBox = e.Form.Controls("新增")
Dim add As String = addrows.text
Tables("表名").AddNew(add)

中间加多一个过渡的变量 "add" 。

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


加好友 发短信
等级:二尾狐 帖子:507 积分:3531 威望:0 精华:3 注册:2012/11/13 15:49:00
  发帖心情 Post By:2014/6/2 1:40:00 [只看该作者]

虽然你声称解决了问题,但方法是错误的,只是瞎猫碰上了死耗子

 

 

问题的正解是:

 

文本型的控件的值是string型的,当你想将其转换成整数型的时候,你应该用转换函数Cint()

 

正确的代码应该是这样的:

 

Dim addrows As WinForm.TextBox = e.Form.Controls("新增")
Dim add As Integer = cint(addrows.text)
Tables("表名").AddNew(add)
 
你之前的代码之所以运行正确是,因为VB.net本身有个自动转换功能。
如果e.Form.Controls("新增")的值不是数字,就会出错。
 

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


加好友 发短信
等级:童狐 帖子:274 积分:2960 威望:0 精华:0 注册:2011/9/19 0:18:00
  发帖心情 Post By:2014/6/3 11:14:00 [只看该作者]

也许你是对的,我之前也用过 cint 这个转换函数,但总提示出错,不知什么原因。
又学了一些新知识,谢谢!

 回到顶部