如何在MSFlexGrid上固定行与固定列上面按Mouse右键时可以弹出下拉菜单?
然后根据该行和列弹出不同的菜单,也就是说根据所点击的行号和列号的不同有不同的动作。谢谢!

解决方案 »

  1.   

    Private Sub MSFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
        If Button = 2 Then
           Select Case MSFlexGrid1.Row
            Case 0
             Me.PopupMenu menu1, , x, y   'menu 为菜单变量
            Case 1
             Me.PopupMenu menu2, , x, y
            Case 2
             Me.PopupMenu menu3, , x, y
            ' ...
           End Select
           
           Select Case MSFlexGrid1.Col
            Case 0
             Me.PopupMenu menu4, , x, y   'menu 为菜单变量
            Case 1
             Me.PopupMenu menu5, , x, y
            Case 2
             Me.PopupMenu menu6, , x, y
            ' ...
           End Select
        End If
    End Sub
      

  2.   

    修改楼上的代码.Private Sub MSFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
        Dim pX as single ,pY  as single
        If Button = 2 Then
           pX = MSFlexGrid1.ColPos(MSFlexGrid1.MouseCol)
           pY = MSFlexGrid1.RowPos(MSFlexGrid1.MouseRow)
           Select Case MSFlexGrid1.MouseRow & "," & MSFlexGrid1.MouseCol
            Case "0,0"
             Me.PopupMenu menu1, , pX, pY   'menu 为菜单变量
            Case "0,1"
             Me.PopupMenu menu2, , pX, pY
            Case "0,2"
             Me.PopupMenu menu3, , pX, pY
            ' ...
            Case "1,0"
             Me.PopupMenu menu11, , pX, pY
            .
            .
            .
           End Select
        End If
    End Sub