Foxtable(狐表)用户栏目专家坐堂 → [求助]多选时StartEdit只对选择区的第一行生效怎么办?


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

主题:[求助]多选时StartEdit只对选择区的第一行生效怎么办?

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


加好友 发短信
等级:超级版主 帖子:107035 积分:544406 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/5/22 17:40:00 [显示全部帖子]

StartEdit中的代码贴出来看看

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


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

KeyDown事件,以帮助的例子做的,自己相应改改

If e.KeyCode = Keys.Delete Then
    e.Cancel = True
    If QQClient.Ready = False Then '如果QQClient没有启动,则禁止编辑
        PopMessage("必须启动QQClient,才能编辑此表数据!","提示",PopIconEnum.Infomation,5)
        Return
    End If
    If e.Table.TopRow = e.Table.BottomRow Then Return
    For i As Integer = e.Table.TopRow To e.Table.BottomRow
        Dim r As Row = e.Table.Rows(i)
        If r.DataRow.RowState <> DataRowState.Added Then '新增行正常编辑
            Dim key As String = e.Table.DataTable.Name  & ":" & r("_Identify")
            If tbrk.Contains(key) = False Then '如果 本人之前已经编辑此行,则正常编辑
                Dim msg = QQClient.SendWait("?#" & Key & "#?",5) '向服务器发送请求编辑信息
                If msg = "OK" Then '如果服务器返回OK
                    tbrk.Add(key) '在本地登记正在编辑此行
                ElseIf msg > "" Then '否则显示服务器返回的信息,并取消编辑
                    'PopMessage("无法编辑此行,因为:" & vbcrlf & msg ,"提示",PopIconEnum.Infomation,5)
                    Continue For
                Else '如果服务器没有返回信息,则取消编辑
                    'PopMessage("因服务器无响应,无法编辑此行!" ,"提示",PopIconEnum.Infomation,5)
                    Continue For
                End If
            End If
        End If
        For j As Integer = e.Table.LeftCol To e.Table.RightCol
            r(j) = Nothing
        Next
    Next
End If

 回到顶部