USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Dicas

  Visual Basic    (ActiveX/Controles/DLL)

Título da Dica:  Preenchendo um ComboBox com os Registros de um Banco de
Postada em 14/8/2000 por Webmaster      Clique aqui para enviar email para o autor  webmaster@vbweb.com.br
Bom, primeiro você deve abrir o Recordset (tanto faz se isso é feito em DAO ou ADO) e, depois disso feito, execute esta rotina:

  'Abre o Recordset...
  RS.MoveFirst
  Do While Not RS.EOF
    Combo1.AddItem RS![Nome do Campo]
    RS.MoveNext
  Loop
Uma dica interessante seria, por exemplo, exibir na ComboBox o campo Nome e guardar na própria ComboBox o valor do campo Código. Veja como fazer isto:

  'Abre o Recordset...
  RS.MoveFirst
  Do While Not RS.EOF
    Combo1.AddItem RS![Nome]
    Combo1.ItemData(Combo1.NewIndex) = RS![Código]
    RS.MoveNext
  Loop
Então, digamos que você queira jogar na variável sNom o Nome selecionado na ComboBox e na variável iCod o código correspondente a este nome selecionado. Para isso, proceda da seguinte forma:

'No evento que você quizer, coloque isto:
  Dim sNom As String, iCod As Integer
  If Combo1.ListIndex <> -1 Then
    iCod = Combo1.ItemData(Combo1.ListIndex)
    sNom = Combo1.Text
  End If

-------------------------------------------------------------------------------
Auto Ajustar Colunas no DBGrid

Private Sub DBGrid1_ColResize(ByVal ColIndex As Integer, _
                              Cancel As Integer)
  Dim DB As Database, RS As Recordset, FL As Field
  Dim Tamanho As Double
  'Cada caracter corresponde a 120 twips na horizontal
  Tamanho = Len(DBGrid1.Columns(ColIndex).Caption) * 120

  Set DB = OpenDatabase("C:\Dir Do VB\Biblio.mdb")
  Set RS = DB.OpenRecordset("Authors")
  Set FL = RS.Fields(DBGrid1.Columns(ColIndex).DataField)

  Do While Not RS.EOF 'Verifica o tamanho de cada valor do campo
    On Error Resume Next
    If Tamanho < Me.TextWidth(FL.Value) Then
      Tamanho = Me.TextWidth(FL.Value)
    End If
    RS.MoveNext
  Loop
  DBGrid1.Columns(ColIndex).Width = Tamanho
End Sub
 


CyberWEB Network Ltda.    © Copyright 2000-2021   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página