GridView en Gambas

12 11 2008
Como dice la documentacion de gambas GridView es un control que permite mostrar datos en una tabla.
Aqui una imagen.

Aqui se muestran las propiedades del control

Aqui pongo algo de codigo para que al momento de abrir la ventana se carguen los datos en el GridView, desde una tabla Productos en este momento solo importa el funcionamiento  del GridView asi que dejamos de lado momentaneamente la conexion que ya esta implicita.

PUBLIC SUB Form_Open()

    DIM filP AS Integer ‘Contador de filas
    DIM colP AS Integer ‘Contador de columnas
    ‘resProductos es un objeto Resul para almacenar el resultado de la consulta
    ‘conex es un Objeto de tipo Connection para las conexion a BD en Gambas
    ‘El metodo Exec() ejecuta una sentencia SQL
    resProductos = conex.Exec(“select * from Productos”)
    ‘Ponemos el numero de columnas a dos
    gvProductos.Columns.Count = 2
    ‘Nro de filas de acuerdo a la cantidad de productos que tenemos en la BD
    gvProductos.Rows.Count = resProductos.Count
    ‘Asignamos la cabecera de la tabla
    gvProductos.Columns[0].Text = “Descripcion del Producto”
    gvProductos.Columns[0].Width = 375  
    gvProductos.Columns[1].Text = “Precio”
    gvProductos.Columns[1].Width = 50 
    ‘Jalamos los datos desde el Objeto Result resProductos hacia el GridView
    ‘Mientras hayan filas en el Result
    DO WHILE resProductos.Available
       gvProductos[filP, colP].Text = resProductos["descripcion"]
       colP = 1
       gvProductos[filP, colP].Text = “$ ” & resProductos["precio"]
       colP = 0
       filP = filP + 1
       ‘Pasamos a la siguiente fila del Objeto Result
       resProductos.MoveNext()
    LOOP

END

Ahora como hacemos para eliminar un producto del GridView si presionamos la tecla Suprimir

PUBLIC SUB gvProductos_KeyRelease()

   IF Key.Code = Key.Delete THEN ‘Comprobamos si la tecla es Suprimir
      IF gvProductos.Current = NULL THEN RETURN
      SELECT Message.Question(“Desea eliminar este producto”, “Si”, “No”, “Ayuda”)
         CASE 1
            TRY conex.Exec(“Delete from Productos where descripcion=&1″, gvProductos.Current.Text)
            IF ERROR THEN
               Message.Error(“Imposible borrar el registro”)
            ELSE
               gvProductos.Rows.Remove(gvProductos.Row)
            END IF
         CASE 2
         CASE 3
      END SELECT
   END IF

END


Acciones

Información

10 respuestas

14 01 2009
Tyser

Por fin justo lo que buscaba Dios!

15 01 2009
inkarri

El autor agradece humildemente el comentario.

29 01 2009
Cesar

Cierto……….Muy util!!!!

26 02 2009
jsbsan

Os dejo la direccion de mi blog, dedicado tambien al Gambas
http://jsbsan.wordpress.com
Espero os guste.
Un saludo
JsbSan

1 03 2009
inkarri

Excelente voy a ponerte en mis enlaces para formar una comunidad Gambas mucho mas grande y donde la gente pueda encontrar ayuda.
Saludos y excelente iniciativa.

3 03 2009
elis brito

muy bien ese dato pero tengo un problemita adicional, necesito mostrar en el gridview algo así como una lista, es decir, buscar en la base de datos la información de un registro, mostrarlo en una fila del gridview, volver a buscar otro registro y mostrarlo en la siguiente fila, y asi sucesivamente.

6 03 2009
jsbsan

Para añadir una linea seria:

‘aumento el gridviews en una fila
GridInformacion.Rows.count = GridInformacion.Rows.count + 1

‘y los datos añadidos por ejemplo:

GridInformacion[GridInformacion.Rows.count
- 1, 0].text = comboSeccion.Text
GridInformacion[GridInformacion.Rows.count
- 1, 1].text = Module1.extrae_archivo(archivo)
GridInformacion[aGridInformacion.Rows.count
- 1, 2].text = archivo

‘ le quito 1, ya que el gridview empieza desde el 0 el primer elemento

16 04 2009
William

Yo tambien buscaba esto, pero una ves que muestre como puedo hacer para que al hacer click en una fila de la tabla me muestre los resultados.

18 05 2009
abel

muy buena tu iniciativa por difundir gambas, es muy buena opcion de programacion visual par linux

21 08 2009
pedro

hola buenas estoy en busca de un poco de ayuda quisiera saber como puedo hacer para que atraves de un gridview yo pueda a mis valores asignarle un color me esplico estoy trbajando en mi proyecto en la universidad y estoy creando sistema de control de estado de la computadoras que se utilizan en una sala de computacion necito que me muestre el estado de todas la computadora si estan ocupada me debe desmostrar un color si estas desocupada otro color espero aberme esplicado le agradezco si me pueden ayudar.

Deja un comentario