MSFlexGrid控件怎么实现将选中行的光标进行上下移动的?

解决方案 »

  1.   

    MSFlexGrid控件怎么实现将选中行的光标进行上下移动的功能?
    大家帮帮忙把
      

  2.   

    呵呵,你要的不会是这样的效果吧?
    Private Sub MSFlexGrid1_Click()
        Dim r As Long
        r = MSFlexGrid1.Row
        MSFlexGrid1.Row = r - 1
        Sleep 500
        MSFlexGrid1.Row = r + 1
    End Sub
      

  3.   

    VERSION 5.00
    Object = "{0ECD9B60-23AA-11D0-B351-00A0C9055D8E}#6.0#0"; "mshflxgd.ocx"
    Begin VB.Form Form1 
       Caption         =   "Form1"
       ClientHeight    =   4770
       ClientLeft      =   60
       ClientTop       =   450
       ClientWidth     =   7890
       LinkTopic       =   "Form1"
       LockControls    =   -1  'True
       ScaleHeight     =   4770
       ScaleWidth      =   7890
       StartUpPosition =   3  'Windows Default
       Begin VB.TextBox txtTemp 
          BackColor       =   &H00C0FFC0&
          BorderStyle     =   0  'None
          Height          =   285
          Left            =   1860
          TabIndex        =   1
          Top             =   2100
          Visible         =   0   'False
          Width           =   975
       End
       Begin MSHierarchicalFlexGridLib.MSHFlexGrid FlexItem 
          Height          =   4305
          Left            =   300
          TabIndex        =   0
          Top             =   240
          Width           =   7155
          _ExtentX        =   12621
          _ExtentY        =   7594
          _Version        =   393216
          _NumberOfBands  =   1
          _Band(0).Cols   =   2
       End
    End
    Attribute VB_Name = "Form1"
    Attribute VB_GlobalNameSpace = False
    Attribute VB_Creatable = False
    Attribute VB_PredeclaredId = True
    Attribute VB_Exposed = False
    Option Explicit
    Dim iRow As Integer
    Dim iCol As Integer
    Private Sub FlexItem_Click()
        Me.txtTemp.Visible = False
        iRow = Me.FlexItem.RowSel
        iCol = Me.FlexItem.ColSel
    End SubPrivate Sub FlexItem_DblClick()
        Me.txtTemp.Move Me.FlexItem.Left + Me.FlexItem.CellLeft, Me.FlexItem.Top + Me.FlexItem.CellTop, Me.FlexItem.CellWidth - 10, Me.FlexItem.CellHeight - 10
        Me.txtTemp.Visible = True
        Me.txtTemp.Text = Me.FlexItem.Text
        Me.txtTemp.SetFocus
    End SubPrivate Sub FlexItem_KeyDown(KeyCode As Integer, Shift As Integer)
        iRow = Me.FlexItem.RowSel
        iCol = Me.FlexItem.ColSel
        FlexItem_DblClick
    End SubPrivate Sub Form_Load()
        With Me.FlexItem
            .Cols = 10
            .Rows = 30
        End With
    End SubPrivate Sub txtTemp_KeyDown(KeyCode As Integer, Shift As Integer)Select Case KeyCode
        Case 37 '左
            iCol = iCol - 1
        Case 38 ' 上
            iRow = iRow - 1
        Case 39 '右
            iCol = iCol + 1
        Case 40  ' 下
            iRow = iRow + 1
    End Select
    '加控制,如果到上最上或最下最左最右时
        Me.FlexItem.Col = iCol
        Me.FlexItem.Row = iRow
        FlexItem_DblClick
    End Sub----------
    www.vicmiao.com
    努力就有美好时光!