Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: gabrielk en 25 Marzo 2006, 04:38 am



Título: Desplegar Una Tabla De Access 2003 en un combobox
Publicado por: gabrielk en 25 Marzo 2006, 04:38 am
Tengo la BD de con una tabla que se llama colores ,quisiera poner el contenido de esa tabla en un combo, la tabla tiene los campos: idcolor y descolor, quiero que me muestre estos campos en el combo ;ejemplo:

1 azul
2 rojo
3 verde

Por su ayuda gracias


Título: Re: Desplegar Una Tabla De Access 2003 en un combobox
Publicado por: karmany en 25 Marzo 2006, 17:32 pm
Hola gabrielk.
Mira, lo primero que tienes que hacer para trabajar la BDD con VB, es pasar tu base de datos de Acces 2003 a 97. Esto con el mismo Access lo puedes hacer.

Deberás "decirle" a VB que vas a abrir una base de datos.. y para esto te pongo el ej. más sencillo para mí, que es con un control de datos Data, aunque es mejor usar el control de datos ADO.
Debes rellenar Connect, poniendo Access. En DataBaseName tu base de datos.
Ahora hay que hacer una consulta y desplegarla en tu combobox. Particularmente, me gustan más los listbox que los combobox, ya que estos últimos me han dado alguna restricción, por eso te lo pongo en un listbox:

Código:
Dim a as integer
a=0
Data1.RecordSource = "SELECT * FROM colores ORDER BY colores"
Data1.Refresh
Do Until Data1.Recordset.EOF
        a=a+1
        List1.AddItem a & " " & Data1.Recordset("colores")
        Data1.Recordset.MoveNext
Loop

Tu pregunta es bastante general para poder responderte completo, pero con esto espero te valga.



Título: Re: Desplegar Una Tabla De Access 2003 en un combobox
Publicado por: gabrielk en 26 Marzo 2006, 05:20 am
La conexion con la base de datos es con ADO y establezco conexion en el Form Load del mismo formulario donde  manipulo la base de datos antes usaba un textbox para capturar el color manualmente,  pero ahora quisiera hacerlo mediante un combobox, de la tabla Colores.Lo unico que me falta es que me desplegue la lista. Segun para mi eso es lo mejor no se si tengan otra sugerencia, y gracias por su interes por ayudarme a aprender...


Título: Re: Desplegar Una Tabla De Access 2003 en un combobox
Publicado por: karmany en 26 Marzo 2006, 14:24 pm
Mira te lo pongo con ADO y con un combobox (combo1), pero me parece que con lo que te he puesto es bastante sencillo hacer lo que pretendes..Te explico: la base de datos tiene una tabla: tabla1 y esa tabla1 tiene un sólo campo: colores.

Código:
Dim a As Integer
    a = 0
    Adodc1.RecordSource = "select * from tabla1 order by colores"
    Do Until Adodc1.Recordset.EOF
        a = a + 1
        Combo1.AddItem a & " " & Adodc1.Recordset("colores")
        Adodc1.Recordset.MoveNext
    Loop
Acabo ahora mismo de probarlo con una base de datos y va perfecto. Si tienes algún problema dime dónde te da el error..


Título: Re: Desplegar Una Tabla De Access 2003 en un combobox
Publicado por: NightZpy en 30 Marzo 2006, 03:35 am
facil mira

Código:
dataenvironment1.rstabla.movefirst
do while no  dataenvironment1.rstabla.eof
combo1.additem dataenvironment1.rstabla.fields(numero del cambo que deseas que agregue sus datos al combo)
dataenvironment1.rstabla.movenext
loop

lo primero te colocas en el primer registro de la tabla, luego le dices que comeince sino ha llegado al final de la tabla  o al ultimo registro, lugo con la propiedad additem agregas al combo los datos que el do while va consiguiendo al recorrer el field o cambo que quieres y con move next puse que cuando recorra un registro valla al otros y asi sucesivamente..

salu2s...