| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 557 人关注过本帖
标题:字符串表达式变数值表达式,不用控件怎么办?
只看楼主 加入收藏
号召教育
Rank: 1
来 自:重庆
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-3-9
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:4 
字符串表达式变数值表达式,不用控件怎么办?
"2+2"
搜索更多相关主题的帖子: 怎么办 表达式 字符串 
2013-05-17 18:43
wxflw
Rank: 6Rank: 6
等 级:侠之大者
帖 子:325
专家分:435
注 册:2012-1-29
收藏
得分:0 
没看明白,表达式和控件有什么关系!!

学习--------------学习-------------------学习--------------------!!
2013-05-17 20:21
号召教育
Rank: 1
来 自:重庆
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-3-9
收藏
得分:0 
我在网上看说要用一个什么控件,我用的是
For i = 1 To Len(Text1.Text)
If Mid(Text1.Text, i, 1) = "+" Then
s = Split(Text1.Text, "+")
For j = 0 To UBound(s)
Dim a(0 To 1) As Integer
a(j) = Val(s(j))
q = q + a(j)
Next j
ElseIf Mid(Text1.Text, i, 1) = "-" Then
s = Split(Text1.Text, "-")
For j = 0 To UBound(s)
Dim b(0 To 1) As Integer
b(j) = Val(s(j))
q = b(0) - b(1)
Next j
ElseIf Mid(Text1.Text, i, 1) = "*" Then
q = 1
s = Split(Text1.Text, "*")
For j = 0 To UBound(s)
Dim c(0 To 1) As Integer
c(j) = Val(s(j))
q = q * c(j)
Next j
ElseIf Mid(Text1.Text, i, 1) = "/" Then
s = Split(Text1.Text, "/")
For j = 0 To UBound(s)
Dim d(0 To 1) As Integer
d(j) = Val(s(j))
Next j
q = d(0) / d(1)
End If
Next i
Text1.Text = q
End Select
End Sub
有点多,还不能计算小数,请高手修改一下
2013-05-18 09:35
lowxiong
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:27
帖 子:653
专家分:3402
注 册:2008-5-7
收藏
得分:20 
楼主是想做字符串表达式的四则混合运算,只需要在“工程--引用--勾选Microsoft Script Control 1.0”,然后用下述代码即可完成你需要的运算(你楼上代码里只使用了一个TextBox控件,其他都和控件无关)
Private Sub Command1_Click()
      Dim b as New ScriptControl, i as Integer,a as String
      a="2*(3+8/4)-5"
      b.Language = "VBScript"
      i = b.Eval(a)
      MsgBox i
End Sub


[ 本帖最后由 lowxiong 于 2013-5-18 10:38 编辑 ]
2013-05-18 10:36
号召教育
Rank: 1
来 自:重庆
等 级:新手上路
帖 子:3
专家分:0
注 册:2013-3-9
收藏
得分:0 
嗯,谢谢啦。
2013-05-18 21:48
快速回复:字符串表达式变数值表达式,不用控件怎么办?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019513 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved