Portal    Foro    Buscar    FAQ    Registrarse    Conectarse

Diferentes Formas De Obtener El Mismo Resultado Haciendolo De Distintas Formas

Diferentes Formas De Obtener El Mismo Resultado Haciendolo De Distintas Formas
Artículo
Responder citando    Descargar mensaje  
Mensaje Diferentes Formas De Obtener El Mismo Resultado Haciendolo De Distintas Formas 
 
Buenas!.

Haciendo un ejemplo de Julio sobre TableView y GridView. Se me ocurrió que se podía obtener
el mismo resultado haciéndolo de distintas formas.

En el mismo formulario existe un GridView y un TableView de esta forma:

 gridviewytableview

Forma original.

Todo el código en el formulario principal. Para un ejemplo no esta mal ya que lo se trata es explicar
el funcionamiento y verlo funcionar sin mas.

Ahora se me ocurrió de que se podía crear un modulo para cada uno de los controles y llamarlo.
Pero yo no quería a penas código en el formulario.

Entonces en un modulo que trabaje con el GridView podría tener algo así:

Public Function DefinirGridView(grd As GridView) As GridView
  
  With grd
    .Header = GridView.Both    
    .Rows.Count = 10
    .Columns.Count = 3
    .Columns[0].Title = "Primera Columna"
    .Columns[1].Title = "Segunda Columna"
    .Columns[2].Title = "Tercera Columna"
    .Columns[0].Width = 120
    .Columns[1].Width = 120
    .Columns[2].Width = 120
    .Font.Name = "Sans"
    .Font.Size = 9
    .Background = 16777215
    .Foreground = 0
  End With
  Return grd  
  
End

Public Function RellenarGridView(grd As GridView) As GridView
  
  Dim a, b As Integer
  
  For a = 0 To grd.Rows.Max
    For b = 0 To grd.Columns.Max
      grd[a, b].Text = "Celda: " & Str(a) & " " & Str(b)
    Next
  Next
  Return grd  
End
 


Como veis en el caso del GridView solo se va a "mostrar" datos.
Pero en cambio si trabajo con el TableView y quisiera crear un modulo.
Parte de los eventos del control tengo que hacerlo en el formulario. ¿ Verdad ?.

Ya que en el TableView voy a usar:
- Click
- Save

Eso no lo puedo poner en el modulo.  

Volvemos a situar parte de código en el modulo y algo más en el formulario principal.  

Así que digo. Voy a heredar un tableview y crear una clase.
Dicho y hecho.

Quedando casi tres o cuatro líneas en el formulario que maneja el TableView.

Pero ahora bien. Ahora viene la pregunta!.  

Y si yo en vez de crear de cero el TableView con una clase.
Quisiera pasarle a esa clase mi objeto que tengo en el formulario.
Y esta clase me devuelva el objeto con unas propiedades fijas en la clase.

¿ Eso es posible ?
¿ Es una forma adecuada ?.

Saludos



 
Shell - Ver perfil del usuario Enviar mensaje privado  
Shell [ Martes, 16 May 2017, 14:06 ]
 


Diferentes Formas De Obtener El Mismo Resultado Haciendolo De Distintas Formas
Comentarios
Responder citando    Descargar mensaje  
Mensaje Re: Diferentes Formas De Obtener El Mismo Resultado Haciendolo De Distintas Formas 
 
Sin estudiar a fondo el tema... no.
No es buena cosa mezclar módulos con clases. Un módulo es lo que es (una clase pública estática y no instanciable).

Si heredas una clase de Gridview y quieres que se auto-configure de una manera concreta, añade una propiedad como un array o colección de parámetros y que en su procedimiento _init() se configure según ellos. Pero eso de que un módulo tejemanejee las tripas de una clase interna de un formulario, etc... no sé, no me cuadra. Los módulos no están para eso.

Saludos



 
shordi - Ver perfil del usuario Enviar mensaje privado  
shordi [ Martes, 16 May 2017, 16:20 ]
Responder citando    Descargar mensaje  
Mensaje Re: Diferentes Formas De Obtener El Mismo Resultado Haciendolo De Distintas Formas 
 
Shell:

Citar:
Y si yo en vez de crear de cero el TableView con una clase.
Quisiera pasarle a esa clase mi objeto que tengo en el formulario.
Y esta clase me devuelva el objeto con unas propiedades fijas en la clase.

¿ Eso es posible ?
¿ Es una forma adecuada ?.


Si, creo que se puede usar el patron visitador:
http://jsbsan.blogspot.com.es/2013/...-cliente-y.html



 
jsbsan - Ver perfil del usuario Enviar mensaje privado  
jsbsan [ Martes, 16 May 2017, 20:04 ]
Responder citando    Descargar mensaje  
Mensaje Re: Diferentes Formas De Obtener El Mismo Resultado Haciendolo De Distintas Formas 
 
No entiendo na, Julio. ¿Dónde aparece el módulo en el ejemplo del Visitador del enlace?... O es que no he entendido a Shell...
Mejor me voy a cenar.

   



 
shordi - Ver perfil del usuario Enviar mensaje privado  
shordi [ Martes, 16 May 2017, 20:43 ]
Responder citando    Descargar mensaje  
Mensaje Re: Diferentes Formas De Obtener El Mismo Resultado Haciendolo De Distintas Formas 
 
Ya cuando se ponen con las clases y herencias etc etc. como concepto va bien pero en rendimiento no me convence.
En el uso de datos de una base para mostrar en un tableview, gridviws etc. lo que mejor me funciono fue el gridview con el código en el mismo formulario (su clase) y no en una clase a parte.

Saludos.



 
tincho - Ver perfil del usuario Enviar mensaje privado  
tincho [ Martes, 16 May 2017, 21:27 ]
Responder citando    Descargar mensaje  
Mensaje Re: Diferentes Formas De Obtener El Mismo Resultado Haciendolo De Distintas Formas 
 
Buenas!.

Usar directamente un patrón puede complicarse mucho y quizás no sea tan necesario
para el problema que planteo. Puede que no lo haya planteado de la mejor forma.

No me gusta hacer algo de una forma al pie de la letra, ya que anula la creatividad del programador.
No somos máquinas, ni actuamos como las mismas. Primero se debe siempre crear algo y verlo
funcionar con las ideas del programador, mejorarlo y por último comprender y usar un método mejor.

Saludos



 
Shell - Ver perfil del usuario Enviar mensaje privado  
Shell [ Miercoles, 17 May 2017, 13:51 ]
Mostrar mensajes anteriores:    
 
Publicar nuevo tema  Responder al tema  Página 1 de 1
 
 

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


 



 

cron