Foros Club Delphi

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

karlaoax 01-08-2007 15:44:27

Form Estatico
 
Hola a todos, tengo una duda. ¿Existira una propiedad que permita que mi form no se mueva de lugar al momento de querer arrastrarla con la barra de titulo de Windows?

Cuando el usuario la trate de mover, simplemente no pueda. ;)

Gracias, Karla

Neftali [Germán.Estévez] 01-08-2007 17:00:41

Propiedad directamente no, puedes capturar los mensajes.

En la parte privada del formulario define:

Código Delphi [-]
 //: Definimos el prcedimiento para capturar el mensaje
procedure _InternalNoMove(var Message: TWMChar); message WM_SYSCOMMAND;


Y en la implementación esto:

Código Delphi [-]
//: Definimos el prcedimiento para capturar el mensaje
procedure TForm1._InternalNoMove (var Message: TWMChar);
begin
 // Mensajes que interceptamos...
 if (Message.Charcode = SC_MOVE or HTCAPTION) or
 (Message.Charcode = SC_MOVE) then begin
  // No hacemos nada || Nothing to do
 end
 else begin
 // Se deben procesar el resto de mensajes || Process messages normally
 inherited;
 end;
end;

karlaoax 01-08-2007 18:19:05

Gracias Neftali, al rato checo el codigo, estoy con mucho trabajo ;) y si tengo dudas, posteo de nuevo. Karla

roman 01-08-2007 18:34:53

Aquí hay otra forma:

Código Delphi [-]
DeleteMenu(GetSystemMenu(Handle, false), SC_MOVE, MF_BYCOMMAND);

que puede ponerse en el OnCreate del formulario.

Por cierto, Neftalí, ¿alguna razón para haber usado TWMChar en lugar de TWMSysCommand? :confused:

// Saludos

karlaoax 01-08-2007 20:45:19

Listo ya cheque el codigo y ambos funcionan perfectamente.

Gracias Neftali y Roman por su tiempo.
Karla :p

Neftali [Germán.Estévez] 02-08-2007 10:39:48

Cita:

Empezado por roman
¿alguna razón para haber usado TWMChar en lugar de TWMSysCommand?

Pues no; Y no tiene mucho sentido...:o
El código es de un proyecto antiguo donde estuve haciendo pruebas con diferentes estilos de los formularios y cambiando propiedades.
O en su día cogí el código de algun sitio y estaba tal que así, o estuve haciendo pruebas y en algun Copy/Paste se quedó así la cabecera.
:confused::confused::confused:


La franja horaria es GMT +2. Ahora son las 23:22:43.

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