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 :

changement de vue


Sujet :

MFC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 86
    Par défaut changement de vue
    Bon apres que l'on est detourné ma discusion pour un sondage sur l'utilisation des assistants sans répondre vraiment a mon probleme .

    Je crée une autre discussion.
    voila maintenant j'ai crée un formulaire . Et ce que je voudrai faire c'est lorsque je clique sur un bouton cela affiche un autre formulaire.

  2. #2
    Membre confirmé Avatar de riadh_ado
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations forums :
    Inscription : Avril 2006
    Messages : 90
    Par défaut fonction SelectView
    vous aves 2 forms(CVeiw ou autres) (un exple CEssaiView et CNewView) pour changer d'une vue a une autre, pour moi je decalare une fonction SelectView dans le CMainFrame et pour les deux button de CEssaiView et CNewView:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    void CEssaiView::OnChangeVue()///Lorsque tu clique sur ta button
    {
    // TODO: Add your control notification handler code here
    ((CMainFrame*)GetParentFrame())->SelectView(1);
    }
    et pour l'autre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    void CNewView::OnRetourVue()
    {
    // TODO: Add your control notification handler code here
    ((CMainFrame*)GetParentFrame())->SelectView(2);
    }
    et la fonction SelectView
    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
    21
    22
    23
    24
    25
    26
    void CMainFrame::SelectView(UINT ViewID)
    {
    CView* pOldActiveView= GetActiveView();
    CView* pNewActiveView;
    switch(ViewID)
    {
    case 1:
    pNewActiveView = (CView*)new CNewView();
    break;
    case 2:
    pNewActiveView = (CView*)new CEssaiView();
    break;
    default:
    AfxMessageBox("Identificateur de vue invalide");
    return;
    }
    pNewActiveView->Create(NULL, NULL, 0L, CFrameWnd::rectDefault, this,
    ViewID, NULL);
    SetActiveView(pNewActiveView);
    pOldActiveView->ShowWindow(SW_HIDE);
    pNewActiveView->ShowWindow(SW_SHOW);
    pOldActiveView->SetDlgCtrlID(m_CurrentViewID);
    pNewActiveView->SetDlgCtrlID(AFX_IDW_PANE_FIRST);
    m_CurrentViewID = ViewID;
    RecalcLayout();
    }

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 86
    Par défaut
    merci bien riadh_ado.

    Mais ton code oblige a mettre les constructeurs des vues en public.
    y'a t il moyen de faire autrement sans changer la visibilité de ces constructeurs

  4. #4
    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
    pour répondre il faudrait connaitre le type de projet généré :
    Boîte de dialogue ?
    SDI ?
    MDI ?

    pour les deux premiers, par les moyens standards tu ne peux appeler qu'une boite de dialogue.

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    86
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 86
    Par défaut
    c'est un SDI

  6. #6
    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
    alors un simple boîte de dialogue peut faire l'affaire ,
    tu as l'exemple dans mon tuto sur le bouton avancé j'ouvre une boîte de dialogue.

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

Discussions similaires

  1. Changement de vue
    Par roubi dans le forum Développement Sharepoint
    Réponses: 0
    Dernier message: 17/08/2011, 14h53
  2. [MonoTouch] Changement de vue
    Par Spaeda dans le forum Apple
    Réponses: 1
    Dernier message: 05/11/2009, 09h30
  3. Changement de vue dans une perspective.
    Par tatemilio2 dans le forum Eclipse Platform
    Réponses: 9
    Dernier message: 24/11/2007, 16h12
  4. [MFC]Problème au changement de vue
    Par NaZtY dans le forum MFC
    Réponses: 2
    Dernier message: 24/05/2007, 19h16
  5. Application SWING / changement de vue
    Par herbert8 dans le forum AWT/Swing
    Réponses: 14
    Dernier message: 22/02/2007, 00h36

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