IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++/CLI Discussion :

[C++/CLI] Maintenir une form fixe � l'�cran


Sujet :

C++/CLI

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    35
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 35
    Par d�faut [C++/CLI] Maintenir une form fixe � l'�cran
    Bonjour � tous.

    Je travaille avec visual c++2005 et je voudrais savoir comment faire pour qu'on ne puisse pas d�placer une form � l'�cran.
    J'ai d�j� jou� sur les "border styles" qui �vite d'agrandir la form, j'ai aussi modifi� la propri�t� "locked" de false � true et inversement sans succ�s.
    Quelq'un conna�t t'il l'astuce ?

    Merci par avance.

    Francis

  2. #2
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par d�faut
    l'astuce la plus simple, c'est d'enlever les bordures

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    35
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 35
    Par d�faut
    Bonjour Nico-pyright(c)

    J'avoue que c'est radical et efficace. Mais sur l'aspect design c'est moins "top".

    Je sais qu'en VB (VB6) il y a la propi�t� "MOVEABLE" qu'on passe de true � false et qui fonctionne quelle que soit la bordure de la fen�tre. Il y a t'il quelque chose de similaire en VC++ (m�me s'il faut �crire du code) ?

  4. #4
    R�dacteur
    Avatar de The_badger_man
    Profil pro
    D�veloppeur .NET
    Inscrit en
    Janvier 2005
    Messages
    2 745
    D�tails du profil
    Informations personnelles :
    �ge : 41
    Localisation : France, Yvelines (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur .NET

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 745
    Par d�faut
    Windows envoie le message NCHITTEST � la fenetre pour d�terminer o� se trouve le curseur de la souris. En traitant ce message, l'application peut tromper Windows en lui faisant croire par exemple que le curseur ne se trouve pas sur la barre de titre mais dans la zone client. Ainsi lorsqu'on voudra d�placer la fenetre en cliquant avec la souris sur la barre titre, rien ne se passera car Windows croira que la souris se trouve au dessus de l'air client.
    Pour obtenir ce comportement il suffit d'�crire la proc�dure suivante (en C#) dans le code de la Form concern�e :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    protected override void WndProc(ref Message m)
            {
                switch (m.Msg)
                {
                    case 0x84:    //message WM_NCHITTEST
                        base.WndProc(ref m);
                        if (m.Result == (IntPtr)2)        // 2 =  barre de titre
                                m.Result = (IntPtr)0;     //0 = fond de la fenetre
                        break;
                    default:
                        base.WndProc(ref m);
                        break;
                }        
            }
    Les r�gles du forum
    Le trio magique : FAQ + Cours + fonction rechercher
    Mes articles
    Pas de questions par messages priv�s svp

    Software is never finished, only abandoned.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    35
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 35
    Par d�faut
    Bonjour "the badger man"

    Quand tu �crit que c'est du code C# fonctionne t'il aussi en C++ ?

  6. #6
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par d�faut
    bien sur, il faut juste le traduire

    c'est pas trop compliqu� � adapter

    sinon, une autre solution serait d'intercepter WM_SYSCOMMAND et SC_MOVE

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Ajuster des composants dans une Form en plein �cran
    Par jalalnet dans le forum Windows Forms
    R�ponses: 2
    Dernier message: 06/06/2011, 10h15
  2. Cherche comment mettre une forme en plein �cran
    Par lou_delphdev dans le forum D�buter
    R�ponses: 10
    Dernier message: 17/04/2011, 23h28
  3. centrer une form sur l'�cran
    Par diam's dans le forum Delphi
    R�ponses: 10
    Dernier message: 31/07/2006, 15h52
  4. dimension centim�trique d'une forme, d'un �cran
    Par Patrice Henrio dans le forum Graphisme
    R�ponses: 4
    Dernier message: 23/02/2006, 18h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo