Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   cerrar formulario (https://www.clubdelphi.com/foros/showthread.php?t=56741)

Patricio 26-05-2008 20:21:57

cerrar formulario
 
la cosa es asi, yo creo y llamo a un Formulario

Form.Create
Form.Showmodal

pero cuando estoy en el Activate de este formulario, si se cumple una condicion quiero cerrarlo

if accion = 'Salir'
then Form.Close

la cosa es que ejecuta la sentencia, pero siempre sigue y me muestra el formulario.

Como hago para q si cumple alguna condicion en el Activate realmente lo cierre y no siga haciendo cosas?

roman 26-05-2008 20:28:43

Intenta con

Código Delphi [-]
PostMessage(Handle, WM_CLOSE, 0, 0);

Aunque sería mejor que lo hicieras en el evento OnShow en lugar de OnActivate para evitar que se vea y luego desaparezca.

// Saludos

totote 04-07-2008 23:52:27

hola Roman, tengo el mismo problema que Patricio y utilice la el código que posteaste, pero hace lo de mostrarse y cerrarse, primero lo puse en el evento onshow, despues oncreate y despues en onactivate, pero en todos pasa lo msimo me lo muestra y desaparece muy rapido pero hace ese "pestaneo" como puedo hacer para que no lo haga?

el código es este:
Código Delphi [-]
procedure TfrmBase.FormShow(Sender: TObject);
begin
  if not (Usuario.GetPermiso) then
  begin
    showmessage('No tiene permiso para ver esta información');
    PostMessage(Handle, WM_CLOSE, 0, 0);
  end;
end;

Saludos


La franja horaria es GMT +2. Ahora son las 13:41:38.

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