FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Duda principiante con manejo de formularios
Yo tengo un formulario (llamemosló F1). Este tiene un menu, desde el cual se accede a otro formulario(llamemosló F2). El tema es que tengo varios combobox en F2, en los cuales si seleccionaba algun valor, y luego cerraba a F2, cuando lo volvia a abrir (desde F1) seguian estando, entonces mi pregunta es...¿Por que siguen estando almacenados los valores si yo lo cerre (o sea, no se tendrian que perder los valores seleccionados)?
Editado: Otra cosa relacionada con formularios, cuando cierro F2, quiero capturar los valores de los combobox que tengo ahi y ponerlos en variables de F1 y no se bien como hacerlo, ya que no entiendo del todo que informacion se pueden intercambiar ambos formularios y como se hace esto. Yo tenia pensado hacer que en el evento close de F2 llame a un proceso almacenado en F1, el cual haria todo lo que acabo de decir en la segunda duda de este hilo...¿estaria bien hecho asi?
__________________
El sabio no dice todo lo que piensa, pero piensa todo lo que dice... Última edición por Chompiras fecha: 11-02-2006 a las 01:28:24. |
#2
|
||||
|
||||
Saludos
El por que siguen los valores en los combobox puede ser porque en realidad el F2 no se destruye totalmente, sino que oculta. Para destruirlo por en su evetno Onclose==> Action:=caFree. Entonces para llamar a este formulario debes crearlo y mostrarlo
Con respectoa pasar valores de F2 a F1, puedes usar variables globales o declarar propiedades para el intercambio de datos entre uno y otro; teniendo en cuenta que debes pasar los valores de F2 a F1 antes de cerrar o destruir F2.
__________________
Van Troi De León (Not) Guía, Code vB:=Delphi-SQL, ¿Cómo? Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto! |
#3
|
||||
|
||||
1. Cuando cierras el formulario, por defecto sólo se oculta y por ello al abrirlo de nuevo todo sigue igual. Puedes cambiar este comportamiento poniendo
en el evento OnClose del formulario F2. Nota no obstante que entonces deberás crearlo nuevamente cuando lo quieras mostrar. 2. Un formulario puede acceder a las componentes y propiedades públicas de cualquier otro formulario con tan sólo incluir su unidad en la cláusula uses. Sin embargo, tal como lo planteas es una mala práctica: ¿Qué hace F2? Permite al usuario seleccionar ciertos valores. Tal y como, por ejemplo, un cuadro "Abrir archivo" le permite seleccionar un archivo. Dicho de otra manera, F2 es un formulario meramente auxiliar y no tiene porqué saber que pasa con esos valores. A quien sí le importa es a F1, ya que es quien los requiere. Lo usual es que F1 use F2.ShowModal para mostrar al formulario auxiliar ya que de esta manera, tiene control de cuándo se cierra y puede así tomar sus valores: Código:
F2.ShowModal; Variables <-- F2.Valores Entonces, lo correcto es crear propiedades públicas, por ejemplo una por cada valor requerido. Cuando F2 se cierre, en su evento OnClose llena estas propiedades tomando los valores de sus combos. Así F1 sólo necesita acceder a esas propiedades públicas. // Saludos |
#4
|
||||
|
||||
¿Otra vez? Caramba, que se me adelanta Troi y además sin tanto rollo como yo Creo que mejor me voy a cenar
// Saludos |
#6
|
|||
|
|||
El teclado mas rapido del Oeste
:d :d :d :d
|
#7
|
|||
|
|||
Gracias a todos!!
Genial, entendi perfectamente todo lo que me dijieron, gracias a todos!!!
Pd: Roman, por mas que se te hayan adelantado al responder, gracias igual, ya que tu respuesta me ayudo a terminar de entender algunos pequeños detalles que no habia entendido aun.
__________________
El sabio no dice todo lo que piensa, pero piensa todo lo que dice... |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Problemas con el manejo de la RAM | SoulSoldier | C++ Builder | 1 | 16-09-2005 00:56:00 |
Mostrar y cerrar correctamente los formularios | serhasae | Varios | 3 | 25-06-2005 19:55:25 |
Duda de principiante (Help!!!!) | taeyin | Firebird e Interbase | 2 | 04-06-2005 22:43:53 |
Duda con un TlistBox(eliminar un Item!! ) | kye_z | Varios | 3 | 17-11-2004 15:39:59 |
CTRL-P en varios formularios | magm2000 | Varios | 2 | 20-10-2004 09:38:09 |
|