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

Visual C++ Discussion :

WS_THICKFRAME Comme mettre un seul cot� redimmensionnable ?


Sujet :

Visual C++

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    D�cembre 2005
    Messages
    227
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2005
    Messages : 227
    Par d�faut WS_THICKFRAME Comme mettre un seul cot� redimmensionnable ?
    Salut,

    Lorsque l'on applique le style WS_THICKFRAME (=WS_SIZEBOX) � un control on peut le redimensionner des 4 cot�s. Moi je voudrait qu'on ne puisse redimensionner qu'un seul cot�.

    Quelqu'un sait comment faire ?

    Merci d'avance

  2. #2
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Tu ne peux, � moins que le contr�le ait d�j� des fonctionalit�s pr�vues pour �a. Si tu fais un contr�le toi-m�me, tu peux faire ainsi: Intercepter le retour de WM_NCHITTEST et censurer les zones de redimensionnement sur certains cot�s...

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    case WM_NCHITTEST:
        retour = DefWindowProc(hWnd, WM_NCHITTEST, wParam, lParam);
        //Exemple: Interdire le redimensionnement gauche
        if(HTLEFT == retour)
            retour = HTBORDER;
        break;
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    D�cembre 2005
    Messages
    227
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2005
    Messages : 227
    Par d�faut
    Ton astuce a l'air de marcher.
    Par contre quant j'applique le style WS_THICKFRAME j'ai une bordure vide (qui n'est pas redessin�e) tout le tour de mon control (c'est en fait l'espace ou apparait la fl�che de redimensionnement). Cette bordure apparait m�me sur les cot�s ou j'ai bloqu� le redimensionnement.

    Comment je pourrait enlever cette bordure ?

    [EDIT] la bordure prend la couleur de fond de la fen�tre principale

  4. #4
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Franchement, l�, je ne sais pas trop. Je n'ai jamais eu ce genre de probl�me (il faut dire qu'on donne rarement une bordure aux contr�les en temps normal).
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Membre confirm�
    Profil pro
    Inscrit en
    D�cembre 2005
    Messages
    227
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2005
    Messages : 227
    Par d�faut
    Citation Envoy� par M�dinoc
    on donne rarement une bordure aux contr�les en temps normal.
    non je voulait dire que avec WS_THICKFRAME �a me fait une bordure et je veur juste l'enlever.

  6. #6
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Je ne crois pas qu'il y ait un moyen de supprimer cette bordure, sauf en faisant tout le dessin toi-m�me (le contr�le doit pour cela traiter les messages WM_NCHITTEST, WM_NCPAINT et WM_NCCALCSIZE).


    Ou bien, tu te fais ton propre style de remplacement de WS_THICKFRAME, et tu joues avec WM_NCHITTEST pour dire que telle partie est une zone de redimensionnement...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

Discussions similaires

  1. mettre le texte � cot� de l'image
    Par loic20h28 dans le forum Balisage (X)HTML et validation W3C
    R�ponses: 5
    Dernier message: 15/02/2009, 21h06
  2. Mettre une seule figure par page
    Par Ramy_2008 dans le forum Tableaux - Graphiques - Images - Flottants
    R�ponses: 4
    Dernier message: 15/10/2008, 23h37
  3. R�ponses: 1
    Dernier message: 19/06/2008, 21h14
  4. [OpenOffice][Texte] Mettre une seule page � l'horizontale
    Par sliderman dans le forum OpenOffice & LibreOffice
    R�ponses: 2
    Dernier message: 31/01/2008, 11h07
  5. Mettre une icone � cot� de l'adresse du site
    Par seb591 dans le forum Balisage (X)HTML et validation W3C
    R�ponses: 1
    Dernier message: 14/08/2007, 12h07

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