Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-09-2004
Xema Xema is offline
Registrado
 
Registrado: sep 2004
Posts: 7
Poder: 0
Xema Va por buen camino
Evitar el minimizado del form maximizado

Hola, que tal? Bueno, tengo un form maximizado y sin bordericons, pero si haces doble click sobre la barra del caption, se minimiza... Como podria evitarse esto? he estado probando con los eventos resize y canresize, pero nada.
Si alguien puede echarme una mano, se lo agradecería mucho.
Gracias
Responder Con Cita
  #2  
Antiguo 24-09-2004
Avatar de defcon1_es
defcon1_es defcon1_es is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuenca - España
Posts: 533
Poder: 21
defcon1_es Va por buen camino
Hola, debes asignar código al evento OnMinimize del objeto TApplication.
Para ello tienes 2 opciones, una más fácil que la otra:

1) Menos fácil, Te defines un método TNotifyEvent y se lo asignas al evento Application.OnMinimize

2) Más fácil, Usas el componente TAppEvents de las Rx y en el evento OnMinimize, le pones SysUtils.Abort;, por ejemplo:
Código Delphi [-]
procedure TFormPrincipalG5SQL.AppEventsMinimize(Sender: TObject);
begin
  SysUtils.Abort; // o lo que quieras  
end;

Salu2.
Responder Con Cita
  #3  
Antiguo 24-09-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por Xema
Hola, que tal? Bueno, tengo un form maximizado y sin bordericons, pero si haces doble click sobre la barra del caption, se minimiza...
Extraño comportamiento, nunca lo había observado. ¿Estás seguro que se minimiza? Haciendo la prueba en mi caso se restaura (queda del tamaño que tenía al diseñarla) lo cual es igual de raro.

De cualquier forma, no podrás evitarlo con el evento OnMinimize de TApplication. Primero porque este evento ocurre después de que se minimiza la aplicación y segndo porque no es la aplicación la qe deseas evitar que se minimice (o restaure) sino el formulario principal, que no es lo mismo.

Como no entiendo el porquéde este comportamiento no sabría decirte un método óptimo pero al menos puedes evitar el doble click sobre la barra de título:

Código Delphi [-]
interface

type
  TForm1 = class(TForm)
    procedure WMNCLButtonDblClk(var Msg: TWMNCLButtonDblClk);
    message WM_NCLBUTTONDBLCLK;
  end;

implementation

procedure TForm1.WMNCLButtonDblClk(var Msg: TWMNCLButtonDblClk);
begin
  { No hacer nada }
end;

end.

// Saludos
Responder Con Cita
  #4  
Antiguo 27-09-2004
Xema Xema is offline
Registrado
 
Registrado: sep 2004
Posts: 7
Poder: 0
Xema Va por buen camino
Funciona!!!

Muchas gracias por ayudarme. Como bien decís, no se minimiza, sino que vuelve al tamaño de diseño, pero ahí se queda (creo que me expresé mal). Con el evento OnMinimize, como bien dice Román, no funciona, pero con el código que me pasasteis de evitar el doble click, funciona perfectamente.

Muchas gracias de nuevo
Responder Con Cita
  #5  
Antiguo 27-09-2004
Xema Xema is offline
Registrado
 
Registrado: sep 2004
Posts: 7
Poder: 0
Xema Va por buen camino
Funciona!!

Muchas gracias por ayudarme. Como bien decís, no se minimiza, sino que el form vuelve a su tamaño de diseño, y se queda anclado. En el evento Onminimize, no funciona pero con el código que puso Roman, para evitar el doble click sobre la barra del caption, si que puede evitarse. Os agradezco mucho vuestra ayuda e interés.
Gracias de nuevo
Responder Con Cita
Respuesta



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


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


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