我要在datagrid 中直接输入数据。在一个字段的输入中希望可以选择,如“部门”字段需要显示一个下拉列表框,然后选择其中的一个部门名称即可。如何在datagrid中把下拉列表框 combobox 显示出来呢?解决即揭帖100分。

解决方案 »

  1.   

    VB 6.0中的DataGrid功能比较弱,不具备这个功能。可以考虑使用别的控件。
      

  2.   

    很久前就回答过
    http://search.csdn.net/Expert/topic/1634/1634398.xml?temp=.4157068
      

  3.   

    Private Sub DataGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
        Select Case DataGrid1.Col
            Case 1
                Check1.Visible = False
                Combo1.Visible = True
                Combo1.Width = DataGrid1.Columns(DataGrid1.Col).Width + 50
                Combo1.Left = DataGrid1.Left + DataGrid1.Columns(DataGrid1.Col).Left
                Combo1.Top = DataGrid1.Top + DataGrid1.Row * (DataGrid1.RowHeight) + (DataGrid1.HeadLines) * 195
                Combo1.SetFocus
                If DataGrid1.Columns(DataGrid1.Col).Text <> "" Then
                    Combo1.Text = DataGrid1.Columns(DataGrid1.Col).Text
                End If
            Case 2
                Check1.Visible = True
                Check1.Width = DataGrid1.Columns(DataGrid1.Col).Width + 50
                Check1.Left = DataGrid1.Left + DataGrid1.Columns(DataGrid1.Col).Left
                Check1.Top = DataGrid1.Top + DataGrid1.Row * (DataGrid1.RowHeight) + (DataGrid1.HeadLines) * 195
                Check1.SetFocus
                Combo1.Visible = False
            Case Else
                Combo1.Visible = False
                Check1.Visible = False
        End SelectEnd SubPrivate Sub Form_Load()
    '工程--->引用--->Microsoft ActiveX Data Object 2.x(版本号)    Dim CN   As New ADODB.Connection                '定义数据库的连接
        Dim Rs   As New ADODB.Recordset
        CN.ConnectionString = "Provider=sqloledb;Data Source=pmserver;Initial Catalog=northwind;User Id=sa;Password=sa;"    CN.Open
        Rs.CursorLocation = adUseClient
        Rs.Open "select * from employees", CN, adOpenDynamic, adLockOptimistic
       Set DataGrid1.DataSource = Rs
    End Sub
      

  4.   

    用第三方表格控件vsFlexgrid 或Formula One会方便些
    Spread也不错
      

  5.   

    建议使用vsFlexgrid 或Formula One
      

  6.   

    在哪儿可以下载vsflexgrid?谢谢。