PDA

Ver la Versión Completa : Como saber desde que Form hemos pulsado un boton?


Delphitest
10-03-2008, 13:37:36
Aprovecho el tirón para hacer mas consultas.

Trabajo con varios Form que tienen cosas en comun. Para ello me resulta interesante que desde ellos pueda llamar a un mismo Form (que llamo Buscador) y que me permita localizar en mi caso un proveedor.

Tengo creado este buscador y me funciona sin problema pero lo que no se como hacer es que tenga en cuenta el form desde donde fue llamado, de tal manera que si elijo un proveedor del DBgrid me lo lleve al form anterior.

He probado anidando varios If y usando Form.visible como condición pero no acabo de dar con ello para que funcione bien.

Mi pregunta es ¿como puedo indentificar el Form desde donde he pulsado el boton que llama al buscador una vez que estoy ya metido en este último?

Uff, no se si me he explicado bien.

Gracias de todos modos

yusnerqui
10-03-2008, 14:05:02
Hola, y de que forma lo llamas, solo utilizas buscador , show o lo creas y destrulles en cada llamada??

Pues se me ocurren dos maneras, si lo haces de la primera forma puedes usar una variable Publica en el buscador que puede llamarse formactivo y que funciones como una bandera la cual debes actualizar antes de llamar al buscador.

La segunda forma es sobrecargando el método create del buscador, y agrgarle un parámetro que sea el form desde el que se llamó.

Bueno en fin son ideas, espero que alguna te sirva.

Saludos

Caro
10-03-2008, 14:46:30
Hola Delphitest

Lo que se me ocurre para saber de donde es que se ingresado a tu formulario Buscador. Cuando crees dicho formulario le asignes como propietario al formulario de donde lo estas llamando ejemplo:

Cuando llamas a tu formulario Buscador desde cualquiera de tus formularios.

Buscador := TBuscador.Create(Self);
Buscador.ShowModal;


Dentro de tu formulario buscador puedes hacer esta pruebita.

procedure TBuscador.Button1Click(Sender: TObject);
begin
showmessage(TForm(Buscador.Owner).Name);
end;


Saluditos

Lepe
10-03-2008, 15:06:24
pequeña puntualización:


procedure TBuscador.Button1Click(Sender: TObject);
begin
showmessage(TForm(Self.Owner).Name);
end;


Saludos

Delphitest
10-03-2008, 18:47:04
Lo habeis clavado, muchas gracias por vuestra ayuda, funciona a la perfección.