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 :

Positionnement d'une pop up


Sujet :

MFC

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 177
    Points : 77
    Points
    77
    Par défaut Positionnement d'une pop up
    Bonjour, j'ai besoin d'aide!
    Je suis en train de développer une application qui possèdes onglets.
    Pour la gestion des onglets, j'utilise une des nombreuses librairies qui permettent de lier un objet CDialog à l'intérieur d'un tab.
    Dans un de mes tabs, je voudrais qu'à l'affichage de celui-ci une petite fenetre, genre tool bar, s'affiche à l'écran.
    Pour ce qui est de la gestion de l'événement, pas de soucis, je m'en suis sorti, mais c'est ensuite que ça se gate.
    Quand je passe ma petit fenetre en child, elle s'affiche comme une fenetre inactive, mais surtout, elle passe en dessous des objets créés dans la fenêtre
    Quand je la passe en "pop up" elle s'affiche en haut à droite de l'écran et je n'arrive pas à lui donner la position adéquate, à savoir qu'elle se positionne dans le coin supérieur droit du contenu de mon onglet (et par dessus tout les autres objets bien sur)

    La dernière solution à laquelle j'avais pensé aurait été de faire un fenêtre modale, mais mais but est de faire qu'une action dans la petite fenêtre, aie une influence sur le contenu de mon onglet.

    J'espère que je me suis fait comprendre...

  2. #2
    Membre confirmé Avatar de stephdim
    Profil pro
    Inscrit en
    Août 2007
    Messages
    462
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 462
    Points : 521
    Points
    521
    Par défaut
    salut,

    Pour la gestion des onglets, j'utilise une des nombreuses librairies qui permettent de lier un objet CDialog à l'intérieur d'un tab.
    ben dans les MFC, il y a CPropertySheet et CPropertyPage qui gère déjà tout ça, je vois pas pourquoi utiliser une lib externe... enfin c'est hors sujet

    bon récapitulons:

    si tu déclares une fenetre en tant que child, elle est confinée dans la fenetre mère (ici le CDialog) ; les coordonnées sont relatives par rapport à la zone cliente de CDialog, donc le contenu de la boite.

    si tu déclares une fenetre en tant que popup, tu peux la balader ou tu veux sur l'écran ; les coordonnées sont relatives au coin en haut à gauche de l'écran.

    en général, une fenetre avec une barre de titre est de type popup (ou overlapped)

    alors tu peux faire:

    * une deuxieme boite de dialogue mais de type modeless qui sera affiché en meme temps que la boite modale. Attribut WS_EX_TOPMOST dans l'éditeur de ressource pour que la boite modeless reste par dessus l'autre. mais pour l'état actif / inactif, il faut bidouiller

    * utiliser une CMiniFrameWnd, regardes la MSDN ; tu peux forcer l'état actif avec un style spécial MFS_SYNCACTIVE - mais là aussi il faut bidouiller parce que ça va normalement en concert avec une CFrameWnd et non un CDialog

    explique un peu mieux ce que tu veux reellement faire.

    @+

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 177
    Points : 77
    Points
    77
    Par défaut
    Ce que j'ai:
    -Une pop up qui s'affiche avec le contenu que je désire
    -Elle n'apparait que lorsque je suis sur un onglet bien défini
    -Elle peut etre bougée dans toute la fenetre

    Ce que je veux:
    - J'aimerais qu'elle s'aligne sur le coin supérieur droit du contenu de mon onglet à la création.
    En sachant que le contenu de mon onglet est un CDialog et que je n'arrive pas à récupérer le grand parent:
    GetParent()->GetParent() me provoque une monumentale erreur!

    Le but final étant d'avoir une petite fenetre d'outils qui contiendra des bouton qui, lorsque l'on cliquera dessus, provoqueront des choses dans le contenu de l'onglet (exactement comme la fenetre qui s'ouvre lorsque l'on clique sur le "Plus" pour afficher d'autres smileys)

Discussions similaires

  1. pop up positionne dans une page
    Par vallees4 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 05/04/2010, 12h37
  2. Réponses: 2
    Dernier message: 20/07/2005, 13h33
  3. forcer le curseur à ce positionner dans une zone texte
    Par caton dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 08/04/2005, 14h17
  4. Récupération de données validées dans une pop-up
    Par hdd dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/12/2004, 16h47
  5. Déplacement ou positionnement d'une fenêtre
    Par agl dans le forum C++Builder
    Réponses: 3
    Dernier message: 10/11/2003, 09h29

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