Empecher un formulaire d'etre deplacé

Résolu
cudenetf Messages postés 448 Date d'inscription mardi 20 septembre 2005 Statut Membre Dernière intervention 26 juillet 2012 - 18 janv. 2007 à 07:21
cudenetf Messages postés 448 Date d'inscription mardi 20 septembre 2005 Statut Membre Dernière intervention 26 juillet 2012 - 18 janv. 2007 à 13:56
bonjour,

je met un formulaire en maximised mais j'enleve les boutons maximise et minimise.
a ce moment l'utilisateur peut deplacer le formulaire...
J'aimerais pouvoir l'empecher de deplacer ce formulaire.
Est-ce possible?
Comment faire?

merci

3 réponses

Lutinore Messages postés 3246 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 27 octobre 2012 41
18 janv. 2007 à 12:45
Salut, rajoute ce code dans ta forme :

private const int WM_NCHITTEST = 0x0084;
private const int HTBORDER = 18;
private const int HTCAPTION = 2;


protected override void WndProc( ref Message m )
{
   base.WndProc( ref m );


   if ( m.Msg == WM_NCHITTEST )
   {
      if ( m.Result == ( IntPtr )HTCAPTION )
      {
         m.Result = ( IntPtr )HTBORDER;
      }
   }
}
3
leprov Messages postés 1160 Date d'inscription vendredi 23 juillet 2004 Statut Membre Dernière intervention 21 octobre 2010 17
18 janv. 2007 à 11:36
tu peux carrément enlever la barre avec bordersize à none...et si le style graphique ne te plait pas comme ca, ca devient plus "compliqué". Dans ce cas il faut soit que tu feinte en mettant une image en border qui va ressembler a la barre des taches, avec un bouton pour fermer dessus qui aie lui aussi le style windows (ca sera moche si ca tourne sous vista par exemple).
Solution autre, intercepter l'envoi de l'API disant que tu as voulu déplacer la fenetre et empêcher l'action...
0
cudenetf Messages postés 448 Date d'inscription mardi 20 septembre 2005 Statut Membre Dernière intervention 26 juillet 2012 2
18 janv. 2007 à 13:56
nickel !
merci bien lutinore

(j'espere que ca n'aura pas d'effets secondaires ...)
0
Rejoignez-nous