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 :

Fermer fenêtre avec le handle


Sujet :

MFC

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 78
    Points : 24
    Points
    24
    Par défaut Fermer fenêtre avec le handle
    Bonjour,

    j'aimerais fermer une fenêtre dont j'ai le Handle. Je n'arrive pas à utiliser SendMessage, puisque je ne peux utilser cette fonction sur un type CWnd.

    Oh la je ne suis pas clair.

    J'aimerais fermer une fenêtre à partir de la fenêtre de mon appli lorsque je quitte celle-ci. La seule info que j'ai sur cette feêtre est son handle.

  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
    Points : 17 323
    Points
    17 323

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 78
    Points : 24
    Points
    24
    Par défaut
    ty me conseil d'utilser le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fille->Postmessage(WM_CLOSE);
    Je ne débute en programmation windows, donc j'ai quelques questions.
    Faut il que je recherche la fenêtre fille lancée que je veux fermer ?

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 78
    Points : 24
    Points
    24
    Par défaut
    je crois que ce qu'il me manque c'est d'attribuer à mon objet Cwindow définit par .

    Existe t'il une fonction permettant de faire la correspondance entre une fêtre identifier par son handle et un objet Cwindow ?

  5. #5
    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
    Points : 17 323
    Points
    17 323
    Par défaut
    oui
    CWnd::FromHandlePermanent
    static CWnd* PASCAL FromHandlePermanent( HWND hWnd );
    utilisation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    //HWND hWnd; initialisé quelque part.
    CWnd *pWnd=CWnd:: FromHandlePermanent(hWnd);
    sinon tu peux aussi faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ::Postmessage(hWnd,WM_CLOSE,0,0);

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 78
    Points : 24
    Points
    24
    Par défaut
    es tu sûr de ton code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CWnd *pWnd=CWnd:: FromHandlePermanent(hWnd);
    Il me semble qu'il faut mettre ça plutôt

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CWnd *pWnd=CWnd->FromHandlePermanent(hWnd);

  7. #7
    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
    Points : 17 323
    Points
    17 323
    Par défaut
    oui je suis sûr de moi ,c'est une fonction statique à la classe CWnd .
    n'existe pas en C++.


  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 78
    Points : 24
    Points
    24
    Par défaut
    autant pour moi.

    Par contre j'ai un autre problème avec le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    CWnd *pWnd=CWnd::FromHandlePermanent(hWnd);
    char titre [10];
    int test;
    test=MyWnd->GetWindowText(titre,10);
    j'ai un plantage :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ...mémoire ne peut pas être read ...

  9. #9
    Membre actif Avatar de lenouvo
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 252
    Points : 203
    Points
    203
    Par défaut
    essaye plutot ce code que t'a mis farscape :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ::Postmessage(hWnd,WM_CLOSE,0,0);
    c'est beaucoup plus simple en général

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 78
    Points : 24
    Points
    24
    Par défaut
    Yes ça marche.
    Merci pour tout.

    Maintenant je finalise mon appli en la positionnant où il faut, ce qui n'est pas gagné.

  11. #11
    Membre actif Avatar de lenouvo
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 252
    Points : 203
    Points
    203
    Par défaut
    regarde du coté de MoveWindow si tu veux bouger une fenêtre avec son handle

Discussions similaires

  1. Problème fermer fenêtre avec dispose()
    Par BBreaker dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 10/10/2010, 18h32
  2. Fermer automatiquement une fenêtre avec Perl/Tk
    Par Dosseh dans le forum Interfaces Graphiques
    Réponses: 8
    Dernier message: 04/07/2007, 18h43
  3. [C#] taille d'une fenêtre avec son handle
    Par damned3 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 03/10/2006, 04h39
  4. fermer fentre avec message
    Par allowen dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 23/03/2006, 13h57
  5. Cacher une fenètre avec son handle
    Par [Silk] dans le forum API, COM et SDKs
    Réponses: 6
    Dernier message: 02/03/2006, 19h46

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