//Ajouter ceci dans les déclarations privées procedure WMWindowPosChanging(var Message: TWMWindowPosMsg); message WM_WINDOWPOSCHANGING; //puis ceci dans le code procedure TForm1.WMWindowPosChanging(var Message: TWMWindowPosMsg); begin if (not Visible) then Exit; with Message do begin WindowPos.X:=Left; WindowPos.Y:=Top; Result:=0; end; end;
Télécharger le zip
Salut !! Il ya une autre solution pour bloquer la fenêtre... Je dis pas que c'est plus facile, mais c'est une suggestion : Il "suffit" de supprimer l'item "Déplacement" du menu système de la form : Procedure TForm1.FormCreate(Sender: TObject); Begin SysMenu := GetSystemMenu(Handle, False); //Récupère le handle du menu DeleteMenu(SysMenu, Sc_Move, mf_ByCommand); //Supprime //l'item "Déplacement" (SC_MOVE) end; Voilà... Peut-être certains utiliseront cette technique ?? ... Elle permet aussi de modifier le menu "a sa guise", avec ModifyMenu... Bye... Bestiol end;
Salut! t'as pas mis d'inherited, il me semble que c nécessaire, non ? enfin, evidemment, ss inherited, le programme doit pas changer de place puisqu'il recoit plus le message...
Super, la source ! Je l'utiliserai dans mon programme de verrouillage de l'ordinateur (bloquer le form quand il faut taper un pass, çà fait toujours plus beau !)
Les deux possibilités sont intéressantes, cependant Bestiol il ne "suffit" pas de supprimer l'item de déplacement : ta solution à le mérite d'être "propre" mais ne fonctionne pas... si tu enlève le menu système de ton form.
Se souvenir du profil
Mot de passe oublié ? / Activation de compteCréer un compte
1 598 809 membres 74 nouveaux aujourd'hui 15 441 membres club