Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 2 de 2
Ir a la página Anterior  1, 2
 
Evento Data, Colorear Celdas Y Ver Texto
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Re: Evento Data, Colorear Celdas Y Ver Texto 
 
Gracias Jorge por los consejos.

Este fin de semana con algo más de tranquilidad te respondo mejor..que es el black friday  a lo "spanish".
y es que parece que las...se vuelven locas con eso de ir de tiendas. Tu ya me entiendes. Ejem..
Supongo que lo habrás padecido "alguna vez".  

La mujer es a la ropa, lo que el hombre a las herramientas.

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Evento Data, Colorear Celdas Y Ver Texto 
 
Shordi:

Veo difícil conocer de antemano el tamaño que puede ocupar un texto en un celda.
Ya que puede cambiar desde por el tipo de fuente usada hasta el tamaño que sea ese texto.

Hasta hace un tiempo una de las preguntas que podíamos ver en la comunidad era de compañeros que se
quejaban de que el tamaño de la celda no se adaptaba al texto.

En cuanto a la presentación del  csv en el grid. Se me ocurrió para el ejemplo que estoy haciendo y tambien una
forma de visualizar "cualquier" csv (conociendo el carácter separador). Algo genérico.

Por cierto, estos caracteres, que son signos de puntuación puede haber una forma de averiguarlos fácilmente.
El problema es que el autor del archivo no le de por usar cosas raras. Como en el caso del archivo de los
partidos de fútbol, ha usado "::"..algo no muy común.  

Tu que tienes que estar acostumbrado a presentar datos de tantos registros en un grdidview .
¿ Qué método sueles usar con en el evento Data del Gridview ?.

Como siempre gracias por la buena explicación.

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Evento Data, Colorear Celdas Y Ver Texto 
 
Ayer me tocó repatearme dos centros comerciales enteros. Pero no problem, yo, bien entrenado marido, me llevo mi ebook en el bolsillo y según entramos busco una cafetería, me pido un cafelito y me sumerjo en, por ejemplo, cómo va a salir Anita Blake del embrollo en que se ha metido, prisionera de un paralítico sicópata que tiene a sus órdenes una malvada sacerdotisa Vudú que ha fabricado un monstruo a base de piezas de cadáveres, humanos y animales, y dos matones a sueldo, sin contar que según consiga salir de ahí, la espera un maestro vampiro que la quiere esclavizar. ¡Que me echen Blackfridays a mí!

Citar:
ha usado "::"..algo no muy común
El uso de los : no es tan raro (échale un ojo al /etc/passwd y otros ficheros del sistema) :: quiere decir que hay un campo vacío entre medias. Sin embargo, para los .csv, siempre hay que dar una opción al usuario para que teclee el campo separador. Los más habituales , ; y \t . Pero puede ser cualquiera, dependiendo del origen. Es también muy habitual el uso de comillas dobles para encerrar los campos, además del separador. Este uso puede ser completo, es decir todos los campos van entrecomillados o parcial, que sólo entrecomilla los campos de texto. Eso es una ayuda. Si usas la coma, por ejemplo, en las direcciones es muy frecuente que haya comas, entrecomillando el campo te ahorras las confusiones.
Como todos los problemas cuando profundizas, es complejo. Yo, creo, nunca he hecho en producción un gridview sobre un CSV, aunque ahora que ha salido el tema no te digo que no lo implemente alguna que otra vez, sobre todo como vista previa a su paso a la base de datos. Algo así como hace el Calc de LibreOffice cuando le pides que abra un .csv Primero te da las opciones y luego lo carga a su formato.

Citar:
¿ Qué método sueles usar con en el evento Data del Gridview ?.

Pues, básicamente, el que he mostrado más arriba. El evento Data, no debe ser muy complejo, porque se ejecuta muchas veces y lo pagas en velocidad. No debe contener nada que no afecte directamente al contenido de las celdas.
Este es el evento data "estandar" que utilizo (donde $rs es el Result que contiene los datos):

Public Sub parrilla_data(row As Integer, col As Integer)
  
    Dim cad As String
    
    If Not $rs Or Me.Row > $rs.count - 1 Then Return
    $rs.MoveTo(Row)
    Select Case $rs.Fields[col].type
        Case gb.Date
            Try cad = Format($rs[$rs.Fields[col].name], "dd-mm-yyyy")
        Case gb.Boolean
            cad = IIf($rs[$rs.Fields[col].name], "SI", "NO")
        Case Else
            cad = CStr($rs[$rs.Fields[Col].Name])
    End Select
    Me.Data.Text = cad
    Me.Data.Foreground = $forecolor
    If $alternate And (Row Mod 2) <> 0 Then
       Me.Data.Background = $lighter
    Else
       Me.Data.Background = $bgcolor
    Endif
    If $fila = row Then
         Me.Data.Font.bold = True
    Else
        Me.Data.Font.bold = False
    Endif
    If $columna = col And $fila = row Then
         Me.Data.background = $selectedcolor
    Endif
    
End

Como ves, símplemente hago un ligero formateo (si es fecha, si es boolean, etc.) y el pongo los colores que la aplicación maneja, añadiendo negrita a la fila actual.
Para todo lo demás tengo una función que "Formatea" el gridview, asignando los títulos de columna, los anchos, etc. y que sólo se llama cuando es necesario (al abrir, al recargar los datos del Result, etc.)
Tienes ese código en aquellos "Controles enganchados" que subí hace unos meses (y que tengo que actualizar porque me parece recordar que los que hay subidos tenían muchos fallos)
 




===================
No podemos regresar
 
última edición por shordi el Sabado, 28 Noviembre 2015, 13:04; editado 1 vez 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Evento Data, Colorear Celdas Y Ver Texto 
 
Es un argumento sorprendente la novela.      . Es como los culebrones de la tele, pero con monstruos!.

Citar:

 :: quiere decir que hay un campo vacío entre medias


Efectivamente, eso hace. No sé que idea tendría el que los creo de está forma. Y además con repetición.
Citar:

1::1970-71::1::Athletic Club::Barcelona::1::1::12/09/1970::21942000.0

Este es el efecto que produce en Calc al usar los "::" como separador.

 conversi_ncsvencalc
Se queda un campo en medio vacío. Tendrá un uso especial para el programador.

Citar:

Como todos los problemas cuando profundizas, es complejo. Yo, creo, nunca he hecho en producción un gridview sobre un CSV, aunque ahora que ha salido el tema no te digo que no lo implemente alguna que otra vez, sobre todo como vista previa a su paso a la base de datos. Algo así como hace el Calc de LibreOffice cuando le pides que abra un .csv Primero te da las opciones y luego lo carga a su formato.


Siempre que conozcas el separador. En el caso del Calc, pregunta cual es el separador. Al comparar y buscar lleva un poco de tiempo.
Decir rápidamente cual es el separador, ahorra todo eso. No es que sean muchos los caracteres de puntuación.

El código del gridview es sencillo. Cuestión de acostúmbrame a usar este evento. Cosa que antes no usaba.
Recuerdo lo de los controles enganchados. Parece que necesitas más tiempo para la programación y menos para conocer "el destino de Anita Blake!".    

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Mas Sobre GridView Heredado Y Su Evento Data shordi Controles/Librerías/Componentes 6 Martes, 05 Octobre 2010, 11:34 Ver último mensaje
shordi
No hay nuevos mensajes Problema Con El Evento Data De GridView. D... Shell General 15 Sabado, 22 Noviembre 2014, 00:21 Ver último mensaje
Shell
No hay nuevos mensajes Como Controlar El Evento Data De Gridview? vr_rv Bases de Datos 6 Jueves, 23 Junio 2016, 22:34 Ver último mensaje
jguardon
No hay nuevos mensajes Evento Data imagomundi Controles/Librerías/Componentes 2 Lunes, 06 Abril 2020, 02:04 Ver último mensaje
tincho
 

Publicar nuevo tema  Responder al tema  Página 2 de 2
Ir a la página Anterior  1, 2

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron