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 :

Ajout de contrôle[Débutant]


Sujet :

Visual C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 4
    Par défaut Ajout de contrôle[Débutant]
    Bonjour a tous!

    Je cherche à ajouter un bouton de controle à une boite de dialogue seulement si l'operateur appuie sur la touche "Ctrl" et je n'y arrive pas. Je cherche depuis un moment et j'ai rien trouver de valable.

    Merci de vos reponses.

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    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 395
    Par défaut
    Tu n'arrive pas à ajouter le contrôle ou tu n'arrives pas à détecter si la touche Ctrl est enfoncée ?
    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
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 4
    Par défaut
    Citation Envoyé par Médinoc
    Tu n'arrive pas à ajouter le contrôle ou tu n'arrives pas à détecter si la touche Ctrl est enfoncée ?
    En fait j'aurais voulu savoir comment on peut rajouter a l'ouverture de ma boite de dialogue un bouton de controle seulement si ma touche Ctrl est enfoncée. Par contre si ma touche n'est pas enfoncée je ne dois pas visualilser ce bouton. Je pense que c'est dans le "initdialog()" que je dois le realiser mais je sais pas comment.

  4. #4
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    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 395
    Par défaut
    En MFC, je ne peux pas vraiment te dire.
    En Win32, on crée le bouton avec CreateWindow() dans le traitement du message WM_INITDIALOG.

    Sinon, il y a plus simple : Toujours créer le bouton, mais ne le rendre visible que si la touche Ctrl est pressée. Très facile.

    PS: Pour savoir si une touche est actuellement enfoncée ou non, j'utilise GetAsyncKeyState().
    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
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 4
    Par défaut
    "Sinon, il y a plus simple : Toujours créer le bouton, mais ne le rendre visible que si la touche Ctrl est pressée. Très facile."

    C'est justement ca que j'aimerais bien faire mais je ne sais pas.

  6. #6
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    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 395
    Par défaut
    Tu le crées en invisible (dans ses propriétés si tu utilises l'éditeur de boîtes de dialogue) et tu fais ceci:
    Code API Windows : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    case WM_INITDIALOG:
       if(GetAsyncKeyState(VK_CONTROL) & 0x8000)
       {
          ShowWindow(GetDlgItem(hWnd, IDC_MONBOUTON), SW_SHOW);
       }
    Code MFC : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    //[redéfinition (déclarée virtuelle dans CDialog)]
    BOOL CMaDialog::OnInitDialog()
    {
       if(::GetAsyncKeyState(VK_CONTROL) & 0x8000)
       {
          //En supposant que le bouton soit lié à m_monBouton 
          // en tant que contrôle
          m_monBouton.ShowWindow(SW_SHOW);
       }
    }
    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.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [débutant] ajouter des contrôles à une feuille par code
    Par Claude_Azoulai dans le forum VB.NET
    Réponses: 3
    Dernier message: 03/04/2010, 18h51
  2. Ajouter un contrôl dans Tab control
    Par riadhz dans le forum MFC
    Réponses: 6
    Dernier message: 25/09/2006, 12h37
  3. Réponses: 4
    Dernier message: 05/05/2005, 16h34
  4. Ajouter des contrôles dans la palette des contrôles.
    Par WOLO Laurent dans le forum MFC
    Réponses: 4
    Dernier message: 22/01/2004, 08h27
  5. Réponses: 5
    Dernier message: 13/11/2003, 16h57

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