Foxtable(狐表)用户栏目专家坐堂 → 请大师指教!谢谢!


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

主题:请大师指教!谢谢!

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


加好友 发短信
等级:三尾狐 帖子:668 积分:5184 威望:0 精华:0 注册:2013/10/7 22:27:00
请大师指教!谢谢!  发帖心情 Post By:2017/3/15 23:48:00 [显示全部帖子]

大师您好!我有一个列是"表A"的"amkf"列 我想要输入分数:  如5 1/2, 显示 5.5,或输入1/2  显示 0.5, 代码如下:
If e.DataCol.Name = "amkf" Then
    If e.DataRow.IsNull("amkf") Then
        e.DataRow("amkf") = Nothing
    Else
        Dim n  = e.DataRow("amkf")
        If n.Length = 1 Then
            e.DataRow("amkf") = n
        Else
            If n.Length = 2 Then
                e.DataRow("amkf") = n
            Else
                Dim d As String = n
                Dim s() As String = d.split(" ")
                If s.Length = 1 Then
                    Dim o() As String = d.split("/")
                    Dim m = (o(0)) / (o(1))
                    e.DataRow("amkf") = m
                Else
                    Dim a As String = (S(1))
                    Dim c() As String = a.split("/")
                    Dim f As Integer  = CInt(c(1))
                    Dim g As Integer  = CInt(c(0))
                    Dim h = (c(0)) / (c(1))
                    Dim j = (s(0))+h
                    e.DataRow("amkf") = j
                End If
            End If
        End If
    End If
End If
输入分数后提示:"调用的止标发生异常 
显示祥细信息:
.NET Framework 版本:2.0.50727.8745
Foxtable 版本:2017.3.2.1
错误所在事件:表,表A,DataColChanged
详细错误信息:
调用的目标发生了异常。
索引超出了数组界限。
请教大师如何修改代码?谢谢!!!




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


加好友 发短信
等级:三尾狐 帖子:668 积分:5184 威望:0 精华:0 注册:2013/10/7 22:27:00
  发帖心情 Post By:2017/3/16 20:32:00 [显示全部帖子]

谢谢大师!!!

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


加好友 发短信
等级:三尾狐 帖子:668 积分:5184 威望:0 精华:0 注册:2013/10/7 22:27:00
  发帖心情 Post By:2017/3/16 20:54:00 [显示全部帖子]

请教大师!
我复制以下代码


DataColChanging事件

 

If e.DataCol.name = "第二列" Then
    Dim str As String = e.NewValue
    If str > "" Then
        Dim ary() As String = str.split(" ")
        Dim n As Double = Eval2(ary(0))
        Dim d As Double = 0
        If ary.length >= 2 Then d = Eval2(ary(1))
        e.NewValue = n + d
    End If
End If

第二列输入分数还是分数,不会转换成小数,再次请大师指教!谢谢!!!


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


加好友 发短信
等级:三尾狐 帖子:668 积分:5184 威望:0 精华:0 注册:2013/10/7 22:27:00
  发帖心情 Post By:2017/3/17 12:29:00 [显示全部帖子]

谢谢!!!

 回到顶部