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

MFC Discussion :

Tab Control


Sujet :

MFC

  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut Tab Control
    Salut
    J'aurais besoin de créé une zone avec 3 onglets.
    J'ai dressiner un Tab Control, mais ce que je met dans n'est pas sur les onglets, mais sur l'onglet. De plus je ne peux pas changer d'onglet.

    Ma question est comment faut il faire pour pouvoir ajouter des element dans un onglet.

    Est ce qu'il y a une méthode graphique ou ext ce qu'il faut ahouter les truc en programmation ?

    Merci

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut,
    le controle d'origine n'est pas tres facile a manipuler ,
    je te propose ça:
    http://farscape.developpez.com/Samples/CxTabCtrl.zip
    qui est une adaptation d'une contribution sur codeproject.

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut
    desolé de passer pour un boulet, mais j'en fait quoi ?

  4. #4
    r0d
    r0d est déconnecté
    Membre expérimenté

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 288
    Billets dans le blog
    2
    Par défaut
    Tu le télécharge, tu ouvre le projet (.dsw) et tu essaie de comprendre comment cela fonctionne. Ensuite, nous pourrons répondre à tes questions

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut
    Ok

    Par contre ca me met un message comme quoi tout ne pouvais pas etre ouvert !!!

  6. #6
    r0d
    r0d est déconnecté
    Membre expérimenté

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 288
    Billets dans le blog
    2
    Par défaut
    En effet, il doit manquer des fichiers inutiles. Mais je te rassure, cet exemple fonctionne parfaitement bien

  7. #7
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut
    Non c'est moi qui suis assisté, en editant le fichier des resource, c'est par ce qu'il faut lui laisser son arboressance, et comme un coulé j'ai utilisé un gissé deposé pour désiper !!!

    Désolé ...

  8. #8
    Membre émérite
    Avatar de Gabrielly
    Inscrit en
    Juin 2004
    Messages
    722
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 722
    Par défaut
    Si tu as les CDs d'installation de Visual Studio (6 ou .NET), il y a un dossier "examples" (je crois CD2) sous le langage VC++ qui reprend plusieurs projets illustratifs dans différents domaines de programmation. En l'examinant bien tu peux aussi trouver des morceaux de codes MFC relatifs aux tabCtrl que tu peux adapter à ton projet.

  9. #9
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut
    Oulala ca part dans tout les ses ce projet !!!

    Mon niveau de compétence en MFC et co est loin de tout ca.

    C'est quoi le plus important car la je ne vois pas ou on ajoute ces boutons et ou on ajoute ces tap (par contre j'ai trouvé pour changer les tab)

    Si j'en implémente, je serais obligé de mettre plusieur fonction comme ca ?

    pour changer, ajouter ....

    Vive les JTabeledPane !!!

  10. #10
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut
    Je ressorts ce sujet du tiroir car je voudrais savoir comment (si c'est possible bien sur ...) on peut faire disparaître un objet.


    Par exemple j'ai des bouton, et si j'empêche qu'ils se ace redessiner, je pourrais faire un semblant de tab control.

    Merci

  11. #11
    Membre Expert
    Avatar de hiko-seijuro
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 011
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 011
    Par défaut
    euh bah ya déjà un control de prévu pour ca alors pourquoi ne pas l'utiliser directement ?

  12. #12
    Membre chevronné
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 464
    Par défaut
    Citation Envoyé par croc14
    Je ressorts ce sujet du tiroir car je voudrais savoir comment (si c'est possible bien sur ...) on peut faire disparaître un objet.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CWnd::ShowWindow(SW_HIDE)
    (Pas dû beaucoup chercher avant de demander...)

  13. #13
    Membre chevronné
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 464
    Par défaut
    Citation Envoyé par croc14
    Par exemple j'ai des bouton, et si j'empêche qu'ils se ace redessiner, je pourrais faire un semblant de tab control.
    Oui. Ca s'appelle de la programmation à la hache

  14. #14
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut
    Je n'arrive pas a trouver comment utiliser le controle prévu a cet effet. Je n'ai q'un onglet a chaque fois, et encore quant il met pas son bazard.

    Si utiliser le Tab Control est facile, est ce que quelqu'un pourrait me dire rapidement comment ca marche. Merci.


    rigobert, le showWindow ne marche pas pour les CButton par exemple si ? (moi c'est ca que je veux faire disparaitre).


    En tout cas, merci pour votre aide.

  15. #15
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut
    Citation Envoyé par rigobert
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CWnd::ShowWindow(SW_HIDE)
    (Pas dû beaucoup chercher avant de demander...)
    Finalement j'ai reussi a faire marcher cette méthode.

    Citation Envoyé par rigobert
    Oui. Ca s'appelle de la programmation à la hache
    Et je confirme je suis en traint de coupper du bois. Donc si utiliser les TabControl est possible, j'aimerais apprendre.

    Car la je me tappe des tartines de ShowWindows. J'ai plongé dans la librairie msdn, mais j'y comprend rien (en plus c'est en anglais !!!)

  16. #16
    Membre chevronné
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 464
    Par défaut
    Tu veux faire un TabControl dans dans quel type de fenêtre (CWnd, CFrameWnd, CDialog, autre(s)...) ?

    Implémenter un TabControl n'est pas franchement compliqué, mais ce n'est pas non plus immédiat : ça demande un peu plus de travail qu'un simple bouton par ex.

  17. #17
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 392
    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 392
    Par défaut
    Une technique courante, c'est de mettre des Dialog avec le style "Child" (ou "Control", je ne sais plus) dans le TabControl, comme ça il faut juste un ShowWindow par onglet, avec SW_SHOW pour la Dialog qui doit être visible et SW_HIDE pour tous les autres...

    Ou bien, si tu as juste besoin d'une fenêtre avec trois boutons et un ensemble d'onglets, tu peux utiliser une Property Sheet, composée de plusieurs Property Pages...
    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.

  18. #18
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Par défaut
    désolé pour le retard dans la réponse mais je suis en plein rapport.

    Mon programme étant CDialog.
    Quels sont les points a intégré obligatoirement ?


    Medinoc, la première solution si je comprend bien, il faut créé (j'ai 3 mode) 3 petite interface. Lorsque je clique sur le bouton le dis que une interface est visible et pas les autres ... et ainsi de suite ?


    Pour la deuxième je ne connait pas du tout la chose. je vais donc voir.

    merci

  19. #19
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 392
    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 392
    Par défaut
    Oui, tu as bien compris.
    Pour les property sheets, c'est simple : Tu cliques avec le bouton droit sur un raccourci du bureau, sur un fichier, etc. et tu choisis l'option "propriétés". Et voilà, une PropertySheet, ça a cette tête-là : Des onglets et des boutons en-dessous.
    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.

  20. #20
    Membre chevronné
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 464
    Par défaut
    Citation Envoyé par croc14
    Mon programme étant CDialog.
    Dans ce cas tu pourrais sans doute faire un "Property Sheet" en dérivant ta fenêtre principale de CPropertySheet au lieu de CDialog.

    Il y a évidemment quelques différences à prendre en compte, mais elles sont (relativement) minimes puisque CPropertySheet dérive elle-même de CDialog.

    En revanche le gain est important parce que la gestion du Tab et des pages associées devient (quasi) automatique, et, bonus sous XP, le gradient de fond de page est correctement géré (raccords, transparence...), ce qui n'est pas le cas avec un objet dérivé directement de CDialog.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 2
    Dernier message: 10/09/2007, 16h43
  2. [Visual C++] Tab control
    Par Grulim dans le forum MFC
    Réponses: 1
    Dernier message: 26/01/2006, 20h40
  3. cherche tuto sur les tab control
    Par firejocker dans le forum MFC
    Réponses: 66
    Dernier message: 14/12/2005, 16h55
  4. [MFC] tab control et focus
    Par Grey dans le forum MFC
    Réponses: 2
    Dernier message: 14/11/2005, 13h30
  5. Couleur et onglet dans le Tab Control Page
    Par loufab dans le forum IHM
    Réponses: 15
    Dernier message: 04/05/2005, 00h04

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