• Lunes 13 de Mayo de 2024, 02:55

Autor Tema:  Re: sobre formularios  (Leído 1199 veces)

BUHO

  • Nuevo Miembro
  • *
  • Mensajes: 17
    • Ver Perfil
Re: sobre formularios
« en: Martes 9 de Septiembre de 2003, 21:39 »
0
Queido foro....
Tengo un problema sobre formularios, que es el siguiente:
Tengo una aplicación en vb60, en la que hay un formulario con textbox, label, commandboton, etc, y desde este formulario hago una llamada a otro formulario para conseguir unos datos que automaticamente se pasan al formulario que lo llamó. Mi pregunta es:
como puedo hacer para que el formulario de donde tomo los datos para pasarlos al otro formulario sea del estilo "msgbox" es decir que reconozca al formulario llamante sin tener que identificarlo con form1.tex1. etc. No se si me he explicado bien os agradeceria buestra ayuda llevo 20 dias bloqueado con esto, agradeceria ejemplo de codigo, gracias por todo.

acalanto

  • Miembro activo
  • **
  • Mensajes: 80
    • Ver Perfil
Re: sobre formularios
« Respuesta #1 en: Martes 9 de Septiembre de 2003, 22:41 »
0
En el formulario que devuelve datos puedes declarar una variable tipo form de forma que cualquier formulario llamante se identifique. En los formularios que obtienen valores deberás declarar o bien una variable común a todos ellos (o algun componente tipo textbox.)


P. Ej.

En el formulario que llama

public MyRetVariable as Variant

private sub Command1_click()
set OwnMsgBox.Llamante = me
OwnMsgBox.show vbModal
end sub


En el formulario que actúa como MSGBOX

Public Llamante as form


Private Sub CommSalir()
Llamante.MyRetVariable="alguna cosa"
unload me
end sub.


Otra forma sería usar la propiedad PARENT para saber que formulario es el llamante y de esta forma devolver el valor a una variable común a todos los formularios de la aplicación.

Espero haberme explicado lo suficiente.

Un saludo
-Acalanto-

BUHO

  • Nuevo Miembro
  • *
  • Mensajes: 17
    • Ver Perfil
Re: sobre formularios
« Respuesta #2 en: Martes 9 de Septiembre de 2003, 23:06 »
0
Gracias por responderme tan rapido

he probado tu codigo, pero lo que yo necesito es poder llamar siempre a un formulario en el cual realizo una busqueda para sacar datos y estos datos pasarlos al formulario que lo llamo, y desde otro formulario tambien llamarlo para lo mismo, entonces el formulario llamado (siempre llamo al mismo) sepa cual es el formulario que lo llamo para pasarle los datos

chiaravel

  • Miembro MUY activo
  • ***
  • Mensajes: 242
    • Ver Perfil
sobre formularios
« Respuesta #3 en: Miércoles 10 de Septiembre de 2003, 00:19 »
0
Quizas no comprendiste la ayuda que te dio Acalanto, pero El respondio exactamente a lo que vos necesitas.

Vos necesitas que el Formulario llamado devuelva valores y los coloque automaticamente en controles del formulario llamador (sea este cual fuera).

bien...

Debes agregar un modulo a tu proyecto y ahi declarar un objeto form que va a ser simplemente de referencia al formulario que luego en tiempo de ejecucion llame a tu formulario colector de datos.

en el modulo

public formulario_llamador as form

en el form llamador

private sub boton_click()

    set formulario_llamador=me
    load formulario_colector
    formulario_colector.show

end sub

en el form colector

rem 'devuelve datos al form llamador'

formulario_llamador.textbox1.txt="Dato"
unload me
me.hide

Es muy simple. Al haber creado como publico un objeto form en tu modulo, este estara disponible para todos tus formularios, simplemente antes de abrir el formulario colector, debes setear este objeto con la referencia del formulario origen.

De esta manera en el formulario colector solo debes hacer mencion del objeto del modulo ya que en su interior se encontrara la referencia al formulario real.

Espero que te quede un poco mas claro.

Suerte
Pablo Tilotta
Analista de Sistemas
Argentina