ATS
não registrado
|
|
ENUNCIADA !
|
|
|
Postada em 04/06/2004 09:32 hs
Amigos estou usando o seguinte código para colocar uma ComboBox em um DataGrid: Private Sub gridItemNota_ButtonClick(ByVal ColIndex As Integer) On Error GoTo linha Dim bd As New ADODB.Connection Dim rst As New ADODB.Recordset bd.CursorLocation = adUseClient bd.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & (dirdb & "bdsgen.mdb") rst.Open "Select CodigoProduto from tblCadProd", bd, adOpenStatic, adLockOptimistic If rst.RecordCount > 0 Then rst.MoveMin Do While Not rst.EOF cboCProduto.AddItem rst("CodigoProduto") cboCProduto.Refresh rst.MoveNext Loop End If Dim coluna As Column If ColIndex = colindex_cboCProduto Then Set coluna = gridItemNota.Columns(ColIndex) With cboCProduto .Left = gridItemNota.Left + coluna.Left .Top = gridItemNota.Top + gridItemNota.RowTop(gridItemNota.Row) + gridItemNota.RowHeight .Width = coluna.Width + 15 .ListIndex = 0 If .Visible = True Then .Visible = False Else .Visible = True End If .ZOrder 0 .SetFocus End With End If Exit Sub linha: End Sub
Só que a ComboBox aparece fora do DataGrid, o que pode estar errado.
|
|
|
|
|
|
|
|
Postada em 04/06/2004 09:46 hs
O que está a acontecer é que, de certeza, as coordenadas para aparecimento da "Combobox" estão erradas. Possívelmente até já viu, mas recomendo dar uma olhada em: As coordenadas, como deve calcular, não são sempre as mesmas, elas dependem do sítio onde se pretende que a "Combobox" seja visivel. João Mateus
|
|
|
|
|
|
Postada em 04/06/2004 10:48 hs
Mateus ja vi o projeto de exemplo só que não estou conseguindo fazer, com que a combobox fique em cima da celula selecionada, acho que o problema está na seguinte linha: .Top = gridItemNota.Top + gridItemNota.RowTop(gridItemNota.Row) + gridItemNota.RowHeight Pois a combobox está se posicionando acima da coluna em que ela tem que ficar.
|
|
|
|
|
|
Postada em 04/06/2004 15:09 hs
Puxa se alguem pudesse me ajudar eu agradeceria muito pois faz dois dias que estou tentando fazer isto.
|
|
|
|