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 :

Comment avoir un CView en fenêtre secondaire et indépendante ?


Sujet :

MFC

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 20
    Par défaut Comment avoir un CView en fenêtre secondaire et indépendante ?
    Bonjour,

    Je travaille sur un projet MDI, et je souhaite avoir un CView supplémentaire mais dans une fenêtre à part, comme une sorte de boite de dialogue.

    Je voulais savoir si c'était possible;
    Sinon, comment créer une fenêtre vide du style CView et puis l'ouvrir à partir d'un CFormView du MDI ?

    Merci d'avance.

    Christophe

  2. #2
    Membre très actif Avatar de subzero01
    Inscrit en
    Décembre 2007
    Messages
    281
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Décembre 2007
    Messages : 281
    Par défaut
    Bonjour Christoph,
    apparament ta requete semble très simple à réaliser: tu n'as qu'a créer une nouvelle Dialog dans le fichier de ressources, et tu crée une nouvelle classe a ton dialog.
    Il ne te reste qu'instacier ta nouvelle classe à l'endroit où tu veux qu'elle apparait, et tu l'affiche avec la methode DoModal.
    Bonne chance.

  3. #3
    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
    Citation Envoyé par cricri-larson Voir le message
    Bonjour,

    Je travaille sur un projet MDI, et je souhaite avoir un CView supplémentaire mais dans une fenêtre à part, comme une sorte de boite de dialogue.

    Je voulais savoir si c'était possible;
    Sinon, comment créer une fenêtre vide du style CView et puis l'ouvrir à partir d'un CFormView du MDI ?

    Merci d'avance.

    Christophe
    salut,
    ces sujets sont traités dans la faq:
    http://cpp.developpez.com/faq/vc/?page=CMdiChildWnd

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 20
    Par défaut
    Citation Envoyé par subzero01 Voir le message
    Bonjour Christoph,
    apparament ta requete semble très simple à réaliser: tu n'as qu'a créer une nouvelle Dialog dans le fichier de ressources, et tu crée une nouvelle classe a ton dialog.
    Il ne te reste qu'instacier ta nouvelle classe à l'endroit où tu veux qu'elle apparait, et tu l'affiche avec la methode DoModal.
    Bonne chance.

    J'aurai voulu que ce soit comme une boite de dialogue, mais je dois tracer un graphe dessus, pourvoir dessiner (en utilisant par exemple la fonction OnDraw). Et j'ai l'impression que je ne peux pas faire ça dans une CDialog.


    Citation Envoyé par farscape Voir le message
    salut,
    ces sujets sont traités dans la faq:
    http://cpp.developpez.com/faq/vc/?page=CMdiChildWnd
    J'ai l'impression que dans cette faq, on parle de fenêtre cadre fille MDI. Moi je voudrais une fenêtre qui soit "extérieure" de la fenêtre cadre principal MDI, comme une énorme boîte de dialogue, ou on pourrait dessiner. Et j'ai pas trouvé ou c'était dans cette faq (c'est peut-être moi qui ait mal vu)

  5. #5
    Expert confirmé
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 526
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 526
    Par défaut
    Citation Envoyé par cricri-larson Voir le message
    Moi je voudrais une fenêtre qui soit "extérieure" de la fenêtre cadre principal MDI, comme une énorme boîte de dialogue, ou on pourrait dessiner. Et j'ai pas trouvé ou c'était dans cette faq (c'est peut-être moi qui ait mal vu)
    eh bien il suffit de créer une fenêtre avec CreateWindow ou bien tu déclares une nouvelle Cview et tu passes le HWND et HINSTANCE de la fenêtre parente
    Le problème des CView c'est qu'elles sont associées avec un CDocument.
    Ou bien alors tu crées ta propre classe de fenêtre qui hérite de CView.

    Perso je ferais une fenêtre avec CreateWindow et une WndProc ce n'est pas très orienté MFC mais si tu crées une nouvelle CView tu vas t'enquiquiner avec toutes les créations d'objets MFC

Discussions similaires

  1. Réponses: 2
    Dernier message: 25/09/2010, 17h22
  2. Comment controler la taille d'une fenêtre secondaire
    Par jlg_47 dans le forum Dreamweaver
    Réponses: 7
    Dernier message: 11/06/2009, 12h18
  3. Comment fermer ma fenêtre secondaire ?
    Par womannosky dans le forum AWT/Swing
    Réponses: 15
    Dernier message: 01/06/2007, 11h09
  4. Comment avoir des fenêtres parentes et enfants
    Par Invité dans le forum Agents de placement/Fenêtres
    Réponses: 6
    Dernier message: 20/09/2005, 11h53
  5. [eclipse][plugin] Comment avoir une fenêtre avec focus
    Par relivio dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 07/04/2004, 15h54

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