Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   Usar un evento de otro formulario (https://www.clubdelphi.com/foros/showthread.php?t=97872)

Angel.Matilla 19-11-2025 17:53:35

Usar un evento de otro formulario
 
Sé que el título es poco claro. Intentaré explicarme.

Tengo dos formularios en los que se piden, por ejemplo, los datos de un nuevo cliente y evidentemente en ambos hay que hacer las mismas validaciones. En la gestión de los clientes (altas, bajas, modificaciones, etc.) tengo este evento:
Código:

void __fastcall TfClientes::NombreExit(TObject *Sender)
{
    if (Nombre->Text.IsEmpty())
    {
          Mensaje(1, "Debe indicar un NOMBRE, "Volver");
          Nombre->SetFocus();
          return;
    }
}
//---------------------------------------------------------------------------

En el otro formulario, que se llama fNueCli, ¿podría usar ese evento para validar ese mismo campo, llamándolo desde este formulario? Es decir: ¿podría poner en los eventos de ese elemento Nombre de este segundo formulario que hiciera el OnExit sobre ese fClientes->OnExit?

Angel.Matilla 19-11-2025 18:59:01

Una alternativa que se me ocurre: ¿Cómo puedo llamar a ese evento del formulario fClientes desde el formulario fNueCli? Me daría lo mismo una cosa que la otra.

chenech 20-11-2025 01:36:10

Yo llamo a funciones desde otros forms muchas veces para evitar duplicar código, debes incluir el include del form fclientes en fnuecli y llamarlo como fclientes->NombreExit(this).
Un saludo.

Neftali [Germán.Estévez] 20-11-2025 09:24:30

Saca las validaciones a otra unit y las invocas desde ambos forms.
Creo que sería lo más correcto y claro.

Angel.Matilla 20-11-2025 09:38:00

Gracias a los dos por las sugerencias.


La franja horaria es GMT +2. Ahora son las 18:26:18.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi