首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法允许在vb6中的mshflexgrid控件上单击时选择行

无法允许在vb6中的mshflexgrid控件上单击时选择行
EN

Stack Overflow用户
提问于 2019-04-23 22:38:43
回答 2查看 172关注 0票数 0

具有mshflexgrid控件的窗体不允许选择鼠标单击已完成的行。有时,它允许选择上一行,而不是所单击的行

我已经尝试添加一个到mshflexgrid的属性.RowSel以允许行选择,它不能用于第二行选择。

代码语言:javascript
运行
复制
Private Sub MSHFlexGrid1_Click()
    last_row_selected = MSHFlexGrid1.RowSel
    If last_row_selected <> 1 Then last_row_selected = last_row_selected + 1
    With MSHFlexGrid1
        If (boolShift And vbShiftMask) = vbShiftMask Then
            SelectionOneAfterTheOther
        ElseIf (boolShift And vbCtrlMask) = vbCtrlMask Then
            SelectUnSelectGridRow
        Else
            UnSelectAllGridRows
            .Row = last_row_selected
            .ColSel = .Cols - 1
            .CellBackColor = vbHighlight
            .CellForeColor = vbHighlightText
        End If
    End With
    MSHFlexGrid1.Refresh
End Sub

.RowSel属性似乎没有为选择行获取正确的值,结果需要正确选择它所单击的行。

EN

回答 2

Stack Overflow用户

发布于 2019-04-24 20:31:42

在您的网格Click事件中,尝试如下所示:

代码语言:javascript
运行
复制
With MSHFlexGrid1
    If .Row = .RowSel Then
        .Col = .Cols - 1
        .ColSel = 0
    End If
End With

您可能还需要在网格控件上设置SelectionMode。如果设置为flexSelectionFree,上面的代码应该可以工作

票数 0
EN

Stack Overflow用户

发布于 2019-04-24 23:33:44

是否设置了SelectionMode属性?如果没有,您可以通过单击属性窗口中的“自定义”来访问它。这将打开一个对话框,其中SelectionMode是可用的属性之一。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55813677

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档