Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #8  
Antiguo 12-01-2021
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Poder: 20
movorack Va camino a la famamovorack Va camino a la fama
Hola, pockelsm3!

Cuando haces el llamado de Form.ShowModal, el formulario se muestra, te permite interactuar con este y al finalizar también permite obtener el resultado la ventana Modal.

Las ventanas Modal pueden devolver una respuesta que representa una acción a tomar en tu aplicación. Entre las mas comunes mrOk y mrCancel que por lo general se muestran como botones de Aceptar y Cancelar. La forma más fácil de asignar esa respuesta está en las mismas propiedades del TButton que elegirás para el Aceptar o el Cancelar.

En el siguiente ejemplo, se evaluará que al presionar el botón llame EjecutarAlgo. Si cierra el formulario o presiona cancelar no hace el llamado de EjecutarAlgo

Código Delphi [-]
procedure Form1.Button1Click(Sender: TObject);
begin
  if frmDevSelect.ShowModal = mrOk then
    EjecutarAlgo;
end;

En el siguiente ejemplo, se validan muchas mas acciones

Código Delphi [-]
procedure Form1.Button1Click(Sender: TObject);
begin
  case frmDevSelect.ShowModal of
    mrOk: EjecutarOk;
    mrYes: EjecutarYes;
    mrNo: EjecutarNo;
  end;
end;

Como recomendación, el formulario modal debe crearse y liberarse de inmediato. Recuperando los valores necesarios antes de liberar el formulario.

Código Delphi [-]
procedure TfrmSalesReturn.ebtnFacturaPropertiesButtonClick(Sender: TObject;
  AButtonIndex: Integer);
  var
    frmDevSelect: TfrmDevSelect;
begin
  inherited;
  if DevTableCUSTCODE.Value <> '' then
     begin
       frmDevSelect := TfrmDevSelect.Create(Application);
       try
         frmDevSelect.FiltrarCliente(DevTableCUSTCODE.Value);
         if frmDevSelect.ShowModal = mrOk then
         begin
           //Recuperar los valores desde el formulario modal y realizar las siguientes acciones
         end;
       finally
         frmDevSelect.Free;
       end;
     end
  else ShowMessage('Debe seleccionar un cliente');
end;
__________________
Buena caza y buen remar... http://mivaler.blogspot.com
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Llamar un procedimiento desde otro form jeremiselxi Varios 7 02-10-2014 12:07:24
Saber si el form fue llamado con showmodal Kenobi Varios 2 01-12-2009 10:08:10
Efectos en el form que abre un ShowModal mam1986 Varios 8 04-08-2008 09:50:47
Error al llamar un form en ShowModal DarkByte OOP 4 28-12-2005 09:16:12
Minimizar Form en ShowModal el_enigma1 OOP 7 08-07-2005 23:25:50


La franja horaria es GMT +2. Ahora son las 23:58:59.


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