Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Переместить combobox в нужный столбец и растянуть по ширине столбца в DataGrid (http://forum.oszone.net/showthread.php?t=339222)

blackeangel 14-02-2019 07:45 2857876

Переместить combobox в нужный столбец и растянуть по ширине столбца в DataGrid
 
Уже всю голову сломал. Как это сделать? Или может есть литература по свойствам и функциям DataGrid?

blackeangel 15-02-2019 22:26 2858185

Сам нашёл ответ
Код:

Option Explicit
Dim rs As ADODB.Recordset
Dim conn As ADODB.Connection
Dim strSQLString As String ''sql query string

Private Sub Form_Load()
Set conn = New ADODB.Connection ''connection object
Set rs = New ADODB.Recordset ''recordset object

conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\db1.mdb;Persist Security Info=False"
conn.Open

strSQLString = "select * from tblFields order by Fields"
rs.Open strSQLString, conn, adOpenDynamic, adLockPessimistic

Do Until rs.EOF
    cmbFields.AddItem rs.Fields("Fields").Value
    rs.MoveNext
Loop

Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\db1.mdb;Persist Security Info=False"
Adodc1.RecordSource = "select * from tblNumbers order by Number"
Set dGrid.DataSource = Adodc1
Adodc1.Refresh

dGrid.Columns(1).Button = True

End Sub

Private Sub dGrid_ButtonClick(ByVal ColIndex As Integer)
    cmbFields.Width = dGrid.Columns(1).Width
    cmbFields.Left = dGrid.Columns(1).Left + dGrid.Left
    cmbFields.Top = dGrid.Columns(1).Top + dGrid.Top + dGrid.RowTop(dGrid.Row) - dGrid.RowHeight
    cmbFields.Visible = True
End Sub

Private Sub dGrid_Click()
    cmbFields.Visible = False
End Sub

Private Sub cmbFields_Click()
    dGrid.Columns(1).Text = cmbFields.Text
    cmbFields.Visible = False
End Sub



Время: 05:42.

Время: 05:42.
© OSzone.net 2001-