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 :

PageControl et boutton [Débutant]


Sujet :

C++Builder

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 11
    Points : 9
    Points
    9
    Par défaut PageControl et boutton
    Bonjour à tous

    J'ai un petit problème de débutant que je ne parviens pas résoudre:

    J'ai créé une petite application possédant un composant "PageControl celui-ci possédant plusieurs "Tabsheet".
    Lorsque je selectionne un onglet particulier je voudrais qu'un "boutton" qui est en dehors de ce PageControl soit "disabled"
    J'ai essayé ceci le "boutton" se grise mais redevient actif après un cours instant

    void __fastcall TForm1:ageControl1Change(TObject *Sender)
    {
    if (((TPageControl *)Sender)->ActivePage == TabSheet2)
    Button5->Enabled=false;



    }

    une idée?
    Merci d'avance

  2. #2
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2013
    Messages
    78
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2013
    Messages : 78
    Points : 136
    Points
    136
    Par défaut
    j'ai essayé ça chez moi et ça marche parfaitement

  3. #3
    Membre chevronné
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Points : 2 189
    Points
    2 189
    Par défaut
    Citation Envoyé par mastok007 Voir le message
    J'ai essayé ceci le "boutton" se grise mais redevient actif après un cours instant
    Salut, tout comme udinacer j'ai essayer ton code et il semble bien fonctionner. Lorsque l'on clique sur le deuxième tab le bouton se désactive et reste désactivé pour toujours:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    void __fastcall TForm1::PageControl1Change(TObject *Sender)
    {
        if(((TPageControl *)Sender)->ActivePage == TabSheet2)
        {
            Button5->Enabled = false;
        }
    }
    Tu ne fais jamais Enabled = true dans ton code, c'est donc impossible qu'il revienne activé. Tu as sans doute oublier de mettre du code dans ton post.
    • Plus un ordinateur possède de RAM, plus vite il peut générer un message d'erreur. - Dave Barry
    • Je n'ai pas peur des ordinateurs. J'ai peur qu'ils viennent à nous manquer. - Isaac Asimov
    • Le code source est comme une belle femme, plus on le regarde, plus on trouve des défauts. - Crayon

  4. #4
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Points : 3 766
    Points
    3 766
    Par défaut
    Salut mastok007
    J'ai essaye ceci et cela fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    void __fastcall TForm1::PageControl1Change(TObject *Sender)
    {
    if (((TPageControl *)Sender)->ActivePage == TabSheet2)
    {
    Button1->Enabled=false;
    }
    if (((TPageControl *)Sender)->ActivePage == TabSheet1)
    {
    Button1->Enabled=true;
    }
    }
    Regarde ton code tu doit avoir un teste pour reactiver ton TButton qui n'est pas correcte
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  5. #5
    Membre chevronné

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

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 374
    Points : 1 759
    Points
    1 759
    Par défaut
    Salut !

    Il y aurait peut-être plus simple :

    Button1->Enabled = (((TPageControl *)Sender)->ActivePage != TabSheet2);

    A plus !

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 11
    Points : 9
    Points
    9
    Par défaut mon bouton récalcitrant
    Le code n'était pas complet pour ne pas surchargé mon propos, mais il est évident que je réactive le bouton quand j'en ai besoin.
    J'ai aussi essayé dans un application vierge avec un PageControl deux TabSheets et un bouton cela a fonctionné.
    J'ai sans doute dans mon application un événement ou autre chose qui me réactive le bouton!
    Je ne sais pas trop de quel côté chercher?

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2008
    Messages : 11
    Points : 9
    Points
    9
    Par défaut mon bouton récalcitrant
    Je viens de trouver mon problème, erreur de débutant évidemment :
    j'ai dans un timer :
    code:
    void __fastcall TForm1::Timer1Timer(TObject *Sender)
    {
    Button2->Enabled = !ClientSocket1->Socket->Connected;
    Button5->Enabled = !ClientSocket1->Socket->Connected;
    Button3->Enabled = ClientSocket1->Socket->Connected;


    }

    C'est cet instruction qui me cause le problème
    Honte à moi

    Merci pour votre temps perdu

    A+

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

Discussions similaires

  1. PageControl -> Une simple question
    Par Invité dans le forum C++Builder
    Réponses: 4
    Dernier message: 08/05/2004, 09h19
  2. [VB6] mettre une image sur un boutton
    Par dim dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 15/02/2004, 01h28
  3. [FLASH MX] Prob de compréhension des bouttons
    Par WriteLN dans le forum Flash
    Réponses: 13
    Dernier message: 16/10/2003, 17h01
  4. Savoir sur quel boutton on a cliqué ...
    Par Fofone dans le forum Composants VCL
    Réponses: 8
    Dernier message: 10/03/2003, 16h12
  5. bouttons à répétition
    Par shumy dans le forum C++Builder
    Réponses: 3
    Dernier message: 26/10/2002, 18h16

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