//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... Bestiolend;
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 872 874 membres 30 nouveaux aujourd'hui 16 151 membres club