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 :

comment changer les tab d'un tpagecontrol ?


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 45
    Par défaut comment changer les tab d'un tpagecontrol ?
    bonjour

    donc voila, j'ai un TPageControl avec des TTabSheet

    et je voudrai pouvoir changer les tabs dans une fonction (sans passer par un evenement)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    pageControl->TabIndex = 1;
    le tab change bien mais le TTabSheet ne s'affiche pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    pageControl->TabIndex = 1;
    pageControl->OnChange (this);
    j'ai donc rajouter un appel a OnChange (sans avoir surchargé la fonction) et ca plante ...

    j'ai donc virer l'appel a OnChange et j'ai mis la propriété Visible = true du tab

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    pageControl->TabIndex = 1;
    tab1->Visible = true;
    ca marche mais dès que je joue avec les tabs (clic souris) ca merde

    qu'est ce que je dois faire ??

    merci de vos réponses

  2. #2
    Expert confirmé

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par défaut
    Réinstaller ton BCB ?

    Bon, sérieusement, as tu bien créé plusieurs TabSheet dans ton composant PageControl ?
    ton premier bout de code est le bon, c'est bizard que ca plante, qu'entend tu part le TTabSheet ne s'affiche pas, as-tu bien passé des composant dans tes TabSheet qui te permette de faire la différence entre l'une et l'autre ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 45
    Par défaut
    yep

    g inséré un TForm différent dans chaque TTabSheet, et j'ai 5 TTabSheet

    ca marche nickel quand je clic sur les onglets

    mais qd je change l'index dans une fonction, l'onglet choisi se "sélectionne" bien mais le TForm ne s'affiche pas, où plutôt, le TForm attaché à l'ancien TTabSheet reste affiché

    g aussi surchargé la fonction OnShow () des TTabSheet, je sais pas si ca peut pauser problème ?

    J'ai pensé surcharger la fonction OnChange () du tpagecontrol puis mettre un switch (TabIndex) et ensuite appeler l'évenemnet OnChange () dans ma fonction mais ca va pauser problème qd je v juste cliquer sur les onglets : il va appeler 2X l'évenement OnShow () des TTabSheet

    donc je vois pas comment faire

  4. #4
    Expert confirmé

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par défaut
    Tu y as mis un TForm ????
    qu'elle est le but de mettre une fenêtre dans un onglet ?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 45
    Par défaut
    parce que j'ai une chiée de composants à placer dans chaque Tab, et il y en a bcp qui se ressemble dans les différentes fenetres, donc pour les nomer, je me retrouve avec des noms à ralonge, en plus j'utilise d'autres tpagecontrol qui se servent ausi de ces TForm

    ya juste a supprimer les bords du TForm et mettre son Parent = TTabSheet et ca marche nickel

  6. #6
    Expert confirmé

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par défaut
    Ce que tu me décrit la est plus l'utilisation d'une TFrame et non d'une TForm.
    Une TFrame est justement une fenêtre sans bord que l'on place comme tu le fait dans plusieurs endroit comme sur une Form ou sur un TabSheet.

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

Discussions similaires

  1. [VB200]Comment changer les images de plusieurs picturebox
    Par stargates dans le forum Windows Forms
    Réponses: 2
    Dernier message: 14/07/2006, 17h05
  2. Réponses: 1
    Dernier message: 30/06/2006, 10h26
  3. Comment changer les sons de Windows ?
    Par leonard.morel dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 28/07/2005, 19h38
  4. [phpBB] Comment changer les couleurs
    Par ludolecho dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 19/05/2005, 08h20
  5. Réponses: 2
    Dernier message: 04/02/2005, 13h23

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