Páginas (3): 1 2 3   
gambafeliz   14-06-2021, 22:52
#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.
vuott   15-06-2021, 01:08
#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).
Última modificación: 15-06-2021, 01:12 por vuott.

« Los horizontes perdidos nunca regresan. » (F. Battiato, 1983)

« Las ondas nunca regresan. » (Genesis: Ripples, 1976)

« Vita non suavis esse potest, nec Mors amara. »  (...vuott)
jguardon   15-06-2021, 01:17
#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'
gambafeliz   15-06-2021, 09:57
#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
gambafeliz   15-06-2021, 14:00
#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.
Última modificación: 15-06-2021, 14:08 por gambafeliz.
Shordi   15-06-2021, 14:17
#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
Última modificación: 15-06-2021, 18:00 por Shordi.

No podemos regresar
gambafeliz   15-06-2021, 20:40
#7
Voy a probar una idea antes de nada y sino añado un ejemplo para que me deis una solución. Gracias.
Shordi   15-06-2021, 21:16
#8
Me debo una horchata. Big Grin Big Grin Big Grin

No podemos regresar
cogier   16-06-2021, 15:36
#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.

Código:
Gridview1 As GridView
sDir As String[] = RDir(User.Home)

Public Sub Form_Open()

  Build_Form

  Gridview1.Columns.Count = 1
  Gridview1.Rows.Count = sDir.Count

End

Public Sub Gridview1_Data(Row As Integer, Column As Integer)

  Gridview1[Row, Column].Text = sDir[Row]

End

Public Sub Build_Form()

  With Me
    .Height = 400
    .Width = 800
    .Padding = 5
    .Arrangement = Arrange.Vertical
    .Center
  End With

  With Gridview1 = New GridView(Me) As "Gridview1"
    .Expand = True
    .Header = GridView.Vertical
  End With

End
End
Última modificación: 16-06-2021, 15:43 por cogier.
gambafeliz   16-06-2021, 18:10
#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.
Páginas (3): 1 2 3   
  
Usuarios navegando en este tema: 9 invitado(s)
Powered By MyBB, © 2002-2024 MyBB Group.
Made with by Curves UI.