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

C++Builder Discussion :

Passage de fenêtres de dialogue en second plan.


Sujet :

C++Builder

  1. #1
    Membre expérimenté
    Avatar de bakaneko
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 268
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 268
    Points : 1 427
    Points
    1 427
    Par défaut Passage de fenêtres de dialogue en second plan.
    Bonjour,

    l'application que je développe est un addon pour pour un logiciel de cartographie. elle se présente sur la forme d'une dll.

    Suite à la demande d'un collègue de travail, j'ai mis en place une méthode pour pouvoir réduire mon application (et donc le logiciel de cartographie): équivalent au premier des trois boutons d'une fenêtre Windows classique.

    Voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    HWND Wind = XgoGetGeoConceptWindow();//récupération du handle de fenêtre du logiciel de cartographie
    ShowWindow(Wind,SW_MINIMIZE);//réduction
    Nb: Pour pouvoir faire la réduction, j'ai également du faire ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SetWindowPos(HCarte,HWND_BOTTOM,Menu->Width,0,Largeur,Hauteur,SWP_SHOWWINDOW|SWP_NOZORDER);
    Le problème que je rencontre est que, une fois cette méthode lancée, toutes les boites de dialogues (du genre TSaveDialog, TOpenDialog, MessageDlg, etc.) se retrouve 'derrière' mon application et je n'arrive pas à les faire revenir devant...

    Ceci est, comme vous vous en doutez, assez génant...

    Je suis preneur pour tout type de solution (à part enlever la méthode de réduction bien entendu )
    + + +

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 374
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 374
    Points : 1 759
    Points
    1 759
    Par défaut
    Salut !

    Il me semble que le flag SWP_NOZORDER empèche la prise en compte du paramètre
    HWND_BOTTOM (hWndInsertAfter).

    Commentaire dans l'aide MS :

    SWP_NOZORDER
    Retains the current Z order (ignores the hWndInsertAfter parameter).

    Faire un essai sans ce flag mais garder le HWND_BOTTOM.

    A plus !

  3. #3
    Membre expérimenté
    Avatar de bakaneko
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 268
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 268
    Points : 1 427
    Points
    1 427
    Par défaut
    Merci henderson,
    ça a l'air de fonctionner comme je voulais

    Je crois que j'aurais toujours du mal avec les fonctions de l'API Windows
    + + +

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

Discussions similaires

  1. VBA Outlook : fenêtre de dialogue au premier plan
    Par Phileo dans le forum VBA Outlook
    Réponses: 1
    Dernier message: 18/11/2011, 11h06
  2. Réponses: 20
    Dernier message: 04/04/2006, 08h16
  3. Réponses: 1
    Dernier message: 24/10/2005, 23h47
  4. TreeView dans une fenêtre de dialogue
    Par Bilouzzz dans le forum MFC
    Réponses: 3
    Dernier message: 16/09/2005, 15h55
  5. Réponses: 10
    Dernier message: 21/04/2005, 10h00

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