Foxtable(狐表)用户栏目专家坐堂 → [求助]列组合代码


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

主题:[求助]列组合代码

帅哥,在线噢!
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/4/3 17:36:00 [显示全部帖子]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:材料组合5120210404.zip


 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/4/5 21:15:00 [显示全部帖子]

有没有什么规律?怎么知道何时加入括号?

 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/4/12 11:55:00 [显示全部帖子]

没看懂,请详细说明一下

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/4/12 14:24:00 [显示全部帖子]

给控件指定有规律的名称,比如组合1 的控件,这样命名:组合1_ComboBox1、组合1_ComboBox2、....;组合2 的控件,这样命名:组合2_ComboBox1、组合2_ComboBox2、....

然后处理的时候,判断一下,如果当前控件以组合1开头,那么就只处理组合1开头的其它控件

If Typeof e.Sender Is WinForm.ComboBox OrElse e.Sender.name Like "*TextBox1*"
    Dim str As String = ""
    If e.Sender.name Like "组合1*"
        Dim c As String = e.Form.Controls("组合1_ComboBox1").text
        If c > "" Then
            str &= c
        End If
        c = e.Form.Controls("组合1_ComboBox2").text
        ……处理组合1的合并
        e.Form.Controls("组合1_TextBox2").text = str
    ElseIf e.Sender.name Like "组合2*"
        Dim c As String = e.Form.Controls("组合2_ComboBox1").text
        ……处理组合2的合并
    End If
End If

 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/4/12 15:32:00 [显示全部帖子]

可以插入到控件文本光标所在的位置,利用SelectionStart属性:http://www.foxtable.com/webhelp/topics/1888.htm

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/15 11:39:00 [显示全部帖子]

Dim s1 As String = "A/BxC"
s1 = s1.Replace("A","50").Replace("B","20").Replace("C","3")
msgbox(s1)

 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/15 14:41:00 [显示全部帖子]

规则不是您自己定义的吗,我只是照抄而已

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/15 14:49:00 [显示全部帖子]

我以为是要把abc这些字母替换为单元格里具体的值。

如果是要把规格的数据拆分到其它单元格里,上面这段代码没有问题,测试有什么问题?

 回到顶部
帅哥,在线噢!
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/15 15:28:00 [显示全部帖子]

去掉下面代码

        Else
            If str.Contains("/") Then
                e.DataRow("内径") = arr(1)
            ElseIf str.Contains("×") Then
                e.DataRow("高度") = arr(1)
            End If

 回到顶部
帅哥,在线噢!
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110597 积分:562881 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/15 15:43:00 [显示全部帖子]

   If e.DataRow.IsNull(e.DataCol.Name) = False Then
        Dim Str As String = e.NewValue
        Dim arr() As String = str.Split(new Char(){"/","×"})

        If arr.Length = 3 Then
        e.DataRow("外径") = arr(0)
            e.DataRow("内径") = arr(1)
            e.DataRow("高度") = arr(2)
        End If
    End If

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