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

Windows Discussion :

Focus sur fausse fenêtre enfant


Sujet :

Windows

  1. #1
    Membre habitué Avatar de TSalm
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    361
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 361
    Points : 177
    Points
    177
    Par défaut Focus sur fausse fenêtre enfant
    Bonjour à tous les amis,

    J'ai une fenêtre classique que j'attache par la suite dans une fenêtre "conteneur de MDI".

    J'utilise pour ça
    - SetWindowLong pour modifier le style de la fenêtre en fenêtre enfant (WS_CHILD)
    - SetParent pour la placer dans mon conteneur de MDI.

    Seulement, à part le survol, ma fenêtre ne recoit pas les événements claviers ou click souris.

    Y a t-il une possibilitée de ne pas avoir ce comportement "non prise de focus" ?


    D'avance merci pour votre aide ô combien bienfaisante
    TSalm

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 518
    Points
    41 518
    Par défaut
    Par "conteneur de MDI", que veux-tu dire exactement ?
    Ta Frame ou la MDIClient qu'elle contient?
    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.

  3. #3
    Membre habitué Avatar de TSalm
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    361
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 361
    Points : 177
    Points
    177
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    Par "conteneur de MDI", que veux-tu dire exactement ?
    Ta Frame ou la MDIClient qu'elle contient?
    La frame qui contient les fenêtre MDI enfants

    [edit] heu... J'attache à un handle qui pointe sur la fenêtre mére et non pas cette zone cliente...
    FAut pas faire comme ça ?

  4. #4
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 518
    Points
    41 518
    Par défaut
    Ben, dans une application MDI, toutes les fenêtres "document" (dont la plupart utilisent DefMDIChildProc() à la place de DefWindowProc()) sont filles de la MDIClient, pas de la Frame...
    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.

  5. #5
    Membre habitué Avatar de TSalm
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    361
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 361
    Points : 177
    Points
    177
    Par défaut
    heu...

    là je suis largué comme un noob de chez noob.

    Bon, comment puis-je faire pour rendre en une fenêtre "normale" une fenêtre MDI enfant, et ainsi la placer comme si de rien était dans une fenêtre faite pour l'adopter comme sa parente naturelle dans sa zone cliente ?

    D'avance merci pour cette orpheline
    TSalm

  6. #6
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 518
    Points
    41 518
    Par défaut
    En quoi cette fenêtre est-elle "normale" précisément ?
    Elle ne t'appartient pas ?
    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.

  7. #7
    Membre habitué Avatar de TSalm
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    361
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 361
    Points : 177
    Points
    177
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    En quoi cette fenêtre est-elle "normale" précisément ?
    Elle ne t'appartient pas ?
    Non. Je n'ai pas la main dessus.
    A l'origine, c'est une fenêtre "normale" que je dois intégrer transformer en fenêtre MDI enfant et la placer à l'intérieur d'une parente MDI

Discussions similaires

  1. Réponses: 2
    Dernier message: 07/01/2012, 15h01
  2. Perte de focus sur une fenêtre modale
    Par yonpo dans le forum Windows Presentation Foundation
    Réponses: 4
    Dernier message: 07/01/2011, 15h32
  3. Réponses: 8
    Dernier message: 29/08/2006, 11h22
  4. Réponses: 43
    Dernier message: 03/03/2006, 20h41
  5. [MFC] focus sur la fenêtre
    Par calavera dans le forum MFC
    Réponses: 1
    Dernier message: 14/02/2006, 23h09

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