Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 2
Ir a la página 1, 2  Siguiente
 
Sobre La Clase Form
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Sobre La Clase Form 
 
Leo ésto en las ayudas del Form:

Citar:
This class can be used like an object by creating a hidden instance on demand.


¿Qué quiere decir exactamente?
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sobre La Clase Form 
 
Shordi

¿que puedes instanciar formularios, como si fueran objetos normales que instancias de clases?


Ejemplo:
Dim formularioTemporal as Form1
Dim ArrayFormularios as form1[]
Dim a as integer

for a=0 to 10
formularioTemporal= New Form1 'creamos nueva instancia. (instancia bajo demanda "instance on demand.")
ArrayFormularios.add(formularioTemporal) 'añadimos formulario al array
formularioTemporal=null 'como es temporal anulamos para poder reutilizarla en el bucle.
next

'al finalizar el bucle, obtemos un array de formularios tipo "Form1" que tiene 10 formularios - objetos diferentes
 


El código no lo he probado pero debe de funcionar.

Saludos
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sobre La Clase Form 
 
Cuidado con la instancia que puede estar oculta y no te la esperas.

Mira que usar oculta. A lo calladito. Esa instancia no es muy legal, cuidadito.
El que avisa no es traidor.

¿ Sera tímida ?.

Dim newformulatrio as new formTimido.

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: Sobre La Clase Form 
 
Citar:
¿que puedes instanciar formularios, como si fueran objetos normales que instancias de clases?

Eso es lo que yo he deducido, o sea lo que literalmente dice, pero eso de oculta como que me ha hecho dudar.
Instanciar forms es cosa de todos los días. Lo que no tengo claro es cómo heredar de ellos...
Mira que soy cepa con la POO...
¿Cómo harías tú una clase que fuera un form extendido? algo así como aquél supergridview con que te estrenaste en la POO hace mil años.
Yo he hecho algo parecido, pero no me convence, no...
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sobre La Clase Form 
 
Lo de oculta pudiera ser de que el formulario puede ser cargado y no mostrado.
Pero instanciarlo habrá que instanciarlo antes.

No podemos darle propiedades al formulario antes de crear la instancia,  el objeto sería nulo.

Con la tontería del ejemplo anterior.

Public Sub Form_Open()
Dim formTimido As Form

formTimido = Object.New("Form")
With formTimido
  .W = 250
  .H = 250
  .Title = "Ya salgo"
  .Center  
End With
formTimido.Show()

End
 


¿ Conocías lo de Object.New ?.

Citar:

....
This routine works exactly like the NEW operator, except that the class name is specified at runtime and not at compile time.
...


La clase va entre las comillas, como cadena.

Por cierto, a la hora de crear el formulario, lo he creado en el método Open de FMain.
El FormTimido creado no tiene el foco. Por mucho que le añada FormTimido.SetFocus(), sigue teniendo FMain el foco.

Ojo, sin usar .ShowModal()
 
Jorge:

¿ Qué quieres que haga el formulario exactamente ?.

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
última edición por Shell el Martes, 02 Septiembre 2014, 19:02; editado 1 vez 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sobre La Clase Form 
 
Lo hice de otra forma, pero igual.  

Clase FormTimido:

Inherits Form

Public Sub _new()

With Me
  .W = 250
  .H = 250
  .Title = "Ya salgo"
  .Center  
End With

Me.Show()
Me.SetFocus()
  
End
 


En FMain

Public Sub Form_Open()
Dim formTimido As FormTimido

formTimido = Object.New("FormTimido")

End
 


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: Sobre La Clase Form 
 
Citar:
Lo de oculta pudiera ser de que el formulario puede ser cargado y no mostrado.

Si, Shell tiene razón, una cosa es que lo crees y lo cargues y luego lo muestres o no


Citar:
¿Cómo harías tú una clase que fuera un form extendido? algo así como aquél supergridview con que te estrenaste en la POO hace mil años.

Depende, que quieres hacer ¿un nuevo componente? o sea
¿un nueva clase formulario que en tiempo de edicion (en el IDE), se puedan añadir controles?
¿un clase que incluya su propio formulario?
Ten encuentra que un form y una clase en la practica es lo mismo....

Yo estoy terminando una nueva clase (que la llamo superinput   ), la cual tiene un método donde se le pasan unos datos (campos, nombres, opciones) y es capaz de interpretar esos datos,  creado el formulario "en tiempo de ejecución" con controles textbox, valuebox, textarea, combobox, y dos botones de "aceptar" y "cancelar".
Cuando cierras ese formulario devuelve los datos en una colección para que se puedan leer facilmente por el programa.

A ver si me da tiempo y lo subo.

Ya me dices.

Saludos
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sobre La Clase Form 
 
Citar:

¿ Qué quieres que haga el formulario exactamente ?.


Nada demasiado concreto, pero tengo un par de formularios estándar que se repiten dentro de contenedores de otros formularios y me parece útil el dejarlos como un componente más.
Imagina, por ejemplo:
Un formulario que consta de un tableview y una barra de botones con los movimientos habituales más algún que otro botón no estándar
Ese formulario es utilizado a lo largo de toda la aplicación como componente de manejo de las listas y demás, incrustándolo en paneles, etc.

Si lo tienes como componente sería más sencillo.

Es solo una vaga idea (quien dice table view, dice cualquier otra cosa)

Saludos.
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sobre La Clase Form 
 
[quote user="shordi" post="23056"]
Citar:

....de las listas y demás, incrustándolo en paneles, etc....


Perdonad que reflote el tema, pero es justo lo que andaba buscando (con el buscador) creo, se puede meter un FORM dentro de otro FORM? concretamente como dice shordi, tengo algunos formularios que en realidad son repetitivos... se puede eso, usar en cualquier parte de otro form???
 



 
CanihoJR - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sobre La Clase Form 
 
CanihoJR:

Citar:
se puede meter un FORM dentro de otro FORM?

Yo lo que hago es usar paneles, donde meto todos los controles, y los inserto en el form... no se si esto te puede servir.
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - 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 Como Importar Un Form(formulario) Sobre Ot... metalgearxd General 3 Jueves, 07 Febrero 2013, 20:46 Ver último mensaje
metalgearxd
No hay nuevos mensajes 'Form.H' Está Mal Sobrescrita En La Clase... datobinario General 26 Jueves, 07 Marzo 2013, 05:17 Ver último mensaje
datobinario
No hay nuevos mensajes Se Puede Llamar Desde Un Form A Un Menupop... v3ctor General 6 Martes, 03 Diciembre 2013, 09:06 Ver último mensaje
jsbsan
No hay nuevos mensajes Ejemplo De Un Form Informando Sobre Los Pr... shordi Aplicaciones/Fragmentos de Código 5 Domingo, 20 Marzo 2016, 21:50 Ver último mensaje
shordi
 

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

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