·vb MSFlexGrid 选中一行
当鼠标中击某个框时,MSFLEXGRID就自动将对应的行用相对的颜色显示出来(感觉上去就是选中了这一整行)MSFlexGrid1.ColSel=MSFlexGrid1.r...
当鼠标中击某个框时,MSFLEXGRID就自动将对应的行用相对的颜色显示出来(感觉上去就是选中了这一整行)
MSFlexGrid1.ColSel = MSFlexGrid1.rows-1 好像不行啊
因为程序中重新定位过msflexgrid的col,好像用这方法不行。 展开
MSFlexGrid1.ColSel = MSFlexGrid1.rows-1 好像不行啊
因为程序中重新定位过msflexgrid的col,好像用这方法不行。 展开
3个回答
展开全部
Option  Explicit
Dim  LastRow  As  Long
Private  Sub  RowColor(ByVal  Row  As  Long,  Optional  t  As  Boolean)
        With  MSHFlexGrid1
                .FillStyle  =  flexFillRepeat
                .Col  =  1
                .Row  =  Row
                .ColSel  =  .Cols  -  1
                .RowSel  =  Row
                .CellBackColor  =  IIf(t,  vbWhite,  vbBlue)
        End  With
        LastRow  =  Row
End  Sub
Private  Sub  Form_Load()
        Me.Move  0,  0,  7935,  6615
        With  MSHFlexGrid1
                .Cols  =  8
                .Rows  =  25
                .Move  75,  75,  7620,  5910
        End  With
End  Sub
Private  Sub  MSHFlexGrid1_EnterCell()
        Dim  Row  As  Long,  Col  As  Long
        With  MSHFlexGrid1
                Row  =  .Row
                Col  =  .Col
                If  LastRow  Then
                        Call  RowColor(LastRow,  True)
                End  If
                Call  RowColor(.MouseRow)
                .Row  =  Row
                .Col  =  Col
        End  With
End  Sub
Dim  LastRow  As  Long
Private  Sub  RowColor(ByVal  Row  As  Long,  Optional  t  As  Boolean)
        With  MSHFlexGrid1
                .FillStyle  =  flexFillRepeat
                .Col  =  1
                .Row  =  Row
                .ColSel  =  .Cols  -  1
                .RowSel  =  Row
                .CellBackColor  =  IIf(t,  vbWhite,  vbBlue)
        End  With
        LastRow  =  Row
End  Sub
Private  Sub  Form_Load()
        Me.Move  0,  0,  7935,  6615
        With  MSHFlexGrid1
                .Cols  =  8
                .Rows  =  25
                .Move  75,  75,  7620,  5910
        End  With
End  Sub
Private  Sub  MSHFlexGrid1_EnterCell()
        Dim  Row  As  Long,  Col  As  Long
        With  MSHFlexGrid1
                Row  =  .Row
                Col  =  .Col
                If  LastRow  Then
                        Call  RowColor(LastRow,  True)
                End  If
                Call  RowColor(.MouseRow)
                .Row  =  Row
                .Col  =  Col
        End  With
End  Sub
展开全部
右键选择msflexgrid的属性,在里面有一个选择方式,你选择按行选择就可以了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
设置SelectionMode值:
MSFlexGrid1.SelectionMode = flexSelectionByRow
MSFlexGrid1.SelectionMode = flexSelectionByRow
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询