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++Builder Discussion :

boutton plusieur click


Sujet :

C++Builder

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    100
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 100
    Par défaut boutton plusieur click
    Bonjour comment faire avec un boutton pour que au 1er click il me fasse une action et au 2em click une autre action?

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    Je dirais qu'il te faut gérer un état applicatif de ton bouton. Quelque chose comme cela :
    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
    16
    17
    CMaclasse::OnButtonClick()
    {
       if(m_etat == 0)
       {
          do_action_0()
          m_etat = 1;
       }
       else if(m_etat == 1)
       {
          do_action_1()
          m_etat = 0;
       }
       else
       {
          // etat non géré
       }
    }
    La variable membre de ta classe m_etat doit être initialisée à 0 dans le constructeur (ou quelque part ailleurs)
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    100
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 100
    Par défaut
    y a t'il une commande pour quitter l'execution d'un bouton sous c++ builder

  4. #4
    Membre Expert
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Par défaut
    y a t'il une commande pour quitter l'execution d'un bouton sous c++ builder
    Oui, comme dans n'importe quelle fonction:

  5. #5
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 407
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 407
    Par défaut
    Salut

    Le mieux serait quand même de développer et commuter (enchaîner) les méthodes.
    Ca évite d'avoir à gérer un flag !

    A la fin de la méthode 1, on passe la méthode 2 comme OnClick du Bouton.
    Si on doit gérer en mode flip-flop, dans ce que cas à la fin de la méthode 2 on lui redonne la méthode 1.

    A plus !

  6. #6
    Membre éclairé Avatar de kurul1
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    934
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 934
    Par défaut
    Tu crée deux méthodes OnClick pour ton bouton.
    tu affecte la méthode 1 au Onclick de ton bouton
    à la fin de la méthode 1, tu affecte la méthode 2 au OnClick de ton bouton
    à la fin de la méthode 2, tu affecte la méthode 1 au OnClick de ton bouton
    et ainsi, au premier click, il fera la méthode 1 et au second la méthode 2.

    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
    16
    17
    18
    19
    20
     
    // Méthode 1, celle affecté au départ au bouton
    void __fastcall TForm::OnClickBouton1(TObject *Sender)
    {
       // Code de ta fonction
       ...
     
       // Tu affecte la méthode 2 au OnClick de ton bouton
       Bouton->OnClick = OnClickBouton2;
    }
     
    // Méthode 2
    void __fastcall TForm::OnClickBouton2(TObject *Sender)
    {
       // Code de ta fonction
       ...
     
       // Tu réaffecte la méthode 1 à ton bouton
       Bouton->OnClick = OnClickBouton1;
    }

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

Discussions similaires

  1. Gérer le click de plusieurs boutons en une seule procédure
    Par OhMonBato dans le forum Windows Forms
    Réponses: 12
    Dernier message: 20/03/2008, 18h32
  2. Réponses: 2
    Dernier message: 18/02/2008, 11h30
  3. plusieurs bouttons pour un seul evenement
    Par ryoussef19 dans le forum C++/CLI
    Réponses: 14
    Dernier message: 14/07/2007, 11h24
  4. [VB.NET]Comment gérer plusieurs boutons en 1 méthode Click ?
    Par Cydreav dans le forum Windows Forms
    Réponses: 4
    Dernier message: 05/02/2006, 23h53
  5. [Jradiobutton] Evenement click sur un boutton radio
    Par Hoegaarden dans le forum Composants
    Réponses: 2
    Dernier message: 21/12/2005, 11h45

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