Este foro usa cookies
Este foro utiliza cookies para almacenar su información de inicio de sesión si está registrado y su última visita si no lo está. Las cookies son pequeños documentos de texto almacenados en su computadora; las cookies establecidas por este foro solo se pueden usar en este sitio web y no representan ningún riesgo de seguridad. Las cookies en este foro también rastrean los temas específicos que ha leído y la última vez que los leyó. Si Ud. continúa navegando, entenderemos que acepta todas las cookies.

Se almacenará una cookie en su navegador, independientemente de la elección, para evitar que se le vuelva a hacer esta pregunta. Podrá cambiar la configuración de sus cookies en cualquier momento utilizando el enlace en el pie de página.

El foro antiguo se encuentra accesible desde https://foro.gambas-es.org en modo de solo lectura.

Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5

Alguien me explica la potencia del método Data de GridView
#1

Hola

A raíz de una conversación en un hilo con Shordi, me he quedado algo noqueado. Os cuento. Yo tengo un GridView con digamos 30 filas y 2 columnas. Estas filas después de cargarlas en el GridView las paso nuevamente por una subrutina para colorear la primera columna según un criterio (para mi son mis favoritas) donde habrá elementos que los coloreo.

Y vuelvo hacer todo de nuevo para colorear según otro criterio como están desactivadas.

En fin, Shordi afirma que con Data se hace infinitamente mas rápido pero no tengo ni idea de como.

Alguien me da un curso didáctico, por favor. Gracias.
    ¡Gracias!
#2

Mi opinión Dodgy es que, al colorear el "GridView" explícitamente, usamos - por ejemplo - un bucle escrito por nosotros en lenguaje Gambas; en cambio, usando el Evento "_Data()", usamos la velocidad más rápida del lenguaje C++ puro (indirectamente).

"Los horizontes perdidos nunca regresan. " (F. Battiato, La stagione dell'amore, 1983)

"Las ondas nunca regresan. " (Genesis: Ripples - A trick of the tail, 1976)
    ¡Gracias!
#3

Hola

Bueno, quedó mucha información en el antiguo foro, te paso una de las coincidencias cuando haces una búsqueda por "evento data" en el foro antiguo:

https://foro.gambas-es.org/viewtopic.php...vento+data

Espero que te sirva, si no, pregunta de nuevo

Saludos

Por favor, usa el corrector ortográfico antes de pulsar el botón 'Enviar'
    ¡Gracias!
#4

Muchas gracias vuott seguiré intentando aprender como hacerlo según tu indicación aunque un tanto pobre para mi, teniendo en cuenta que no conozco bien todavía Gambas.

Gracias también jguardon lo miro y como me dices si no me queda claro pues sigo con la conversación. Por cierto me alegra gratamente saludarte. Espero que estés bien y todo tu family, Saludos Smile
    ¡Gracias!
#5

Necesito mas ayuda, lo explico.
Por cierto estupendo hilo el de Shell, vuott, Shordi y creo jguardon.

Yo cargo una consulta y la paso a un GridView personalizado. Me supongo que en esta consulta debería colorear las celdas que necesito, pero hay un pero. Y es que no puede ser así y justo por eso necesito vuestra ayuda por favor. Lo voy a explicar mejor.

1. Aun GridView le paso una consulta con los datos.
2. Necesito hacer otra consulta para obtener los datos de mis favoritos y después le paso a una subrutina en un módulo a parte y a esta subrutina le paso la consulta y el Gridview y dentro de esta subrutina trato el color de mis favoritos. Y ustedes supongo que lo que pretenden es en una única consulta cargar los datos y con el método data colorear las celdas correspondientes. Pero yo necesito hacer dos consultas.

Me he liado no se como hacerlo según mi caso y si he entendido vuestros ejemplo del hilo propuesto por jguardon. Sorry chicos soy muy torpedo Sad

Me guían, please

Nota:
Sería algo como:
Actualmente
1. Base datos->Consulta->GridView Personal (cargo datos)
2. Base datos->Consulta->ModuloGambas(Subrutuna colorearFavoritos)comparo datos existentes en GridView con Consulta->Coloreo GridView Personal

Ustedes creo que proponen:
1. Base datos->Consulta->GridView Personal->Método Data() para colorear según criterio de Consulta.
    ¡Gracias!
#6

Cita:Nota:
Sería algo como:
Actualmente
1. Base datos->Consulta->GridView Personal (cargo datos)
2. Base datos->Consulta->ModuloGambas(Subrutuna colorearFavoritos)comparo datos existentes en GridView con Consulta->Coloreo GridView Personal
Como no pases código, eso es un carajal inayudable, me temo.
No seas tímido. Haz un proyecto donde estén todos esos movimientos que cuentas y súbelo.

Saludos

No podemos regresar
    ¡Gracias!
#7

Voy a probar una idea antes de nada y sino añado un ejemplo para que me deis una solución. Gracias.
    ¡Gracias!
#8

Me debo una horchata. Big Grin Big Grin Big Grin

No podemos regresar
    ¡Gracias!
#9

Aquí tienes un ejemplo que puedes probar. Observe que sólo la parte visible del GridView se llena de datos. A medida que se desplaza, Gambas rellena los datos necesarios. Esto lo hace mucho más rápido.

Ejecute este código en una aplicación gráfica.

GAMBAS
  1. Gridview1 As GridView
  2. sDir As String[] = RDir(User.Home)
  3.  
  4. Public Sub Form_Open()
  5.  
  6.   Build_Form
  7.  
  8.   Gridview1.Columns.Count = 1
  9.   Gridview1.Rows.Count = sDir.Count
  10.  
  11.  
  12. Public Sub Gridview1_Data(Row As Integer, Column As Integer)
  13.  
  14.   Gridview1[Row, Column].Text = sDir[Row]
  15.  
  16.  
  17. Public Sub Build_Form()
  18.  
  19.   With Me
  20.     .Height = 400
  21.     .Width = 800
  22.     .Padding = 5
  23.     .Arrangement = Arrange.Vertical
  24.     .Center
  25.  
  26.   With Gridview1 = New GridView(Me) As "Gridview1"
  27.     .Expand = True
  28.     .Header = GridView.Vertical
  29.  


[-] Los siguientes 1 usuarios dice gracias a cogier por este post:
  • gambafeliz
    ¡Gracias!
#10

Gracias Cogier eres maravilloso, lo miraré e intentaré comprenderlo para ver si puedo hacer algo con mi código y mi problema.

Millones de Gracias.
    ¡Gracias!


Posibles temas similares…
Tema / Autor Respuestas Vistas Último mensaje

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)