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 :

[MFC] Mon appli en arrière plan


Sujet :

MFC

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

    Informations forums :
    Inscription : Avril 2005
    Messages : 78
    Par défaut [MFC] Mon appli en arrière plan
    Bonjour,

    j'aimerais savoir si il est possible de mettre la fenêtre de mon appli en arrière plan sans spécifié de mettre le focus sur les autres fenêtre existante.

    En gros, j'ai quelque soucis pour récupérer les fenêtres courantes, et j'aimerais juste mettre mon appli en arrière plan.

    Merci

  2. #2
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par défaut
    Salut,
    SetWindowPos avec HWND_BOTTOM

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

    Informations forums :
    Inscription : Avril 2005
    Messages : 78
    Par défaut
    mon soucis est queje ne sais comment récupérer le handle de ma feneêtre CWnd.

    Sinon, je pensais utiliser cette fonction.

  4. #4
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par défaut
    ca depend d'où tu veux y acceder, quel est le contexte ?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 78
    Par défaut
    Et bien au moment de l'initialisation de ma dialogbox. J'arrive à spécifier la position de ma feneètre avec le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    CWnd * WndAmin=GetDlgItem(IDD_AMIN_DIALOG);
    SetWindowPos(WndAmin,WndListe.left,WndListe.bottom,0,0,SWP_NOSIZE);
    avec WndListe déclaré au préalable.
    Maintenant, je voudrais que cette feneêtre WndAmin soit en arrière plan.

  6. #6
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par défaut
    alors, pourquoi ne pas faire un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WndAmin->SetWindowPos(&CWnd::wndBottom   ,0,0,0,0, SWP_NOSIZE | SWP_NOMOVE);
    Edit : corrigé

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 78
    Par défaut
    j'obtiens une erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    error C2664: 'SetWindowPos' : cannot convert parameter 1 from 'const class CWnd' to 'const class CWnd *'
    De plus j'ai essayé de récuéprer le handle de ma fenêtre comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HWND phwAmin=WndAmin->m_hWnd;
    mais là ça plante à l'execution.

  8. #8
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par défaut
    Je pense que ta méthode pour récuperer le handle est mauvaise.

    S'agit-il d'un programme SDI/MDI/DialogBased ?

    essaie avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AfxGetMainWnd()->SetWindowPos(&CWnd::wndBottom,0,0,0,0, SWP_NOSIZE | SWP_NOMOVE);
    edit : corrigé

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    78
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 78
    Par défaut
    erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    error C2228: left of '.SetWindowPos' must have class/struct/union type
    Comme je débute, je ne saisi pas ta question.

    EN gros, au moment de l'initialisation de ma DialogBox de mon appli MFC, j'arrive à la repositionner (ce qui veux dire que j'ai bien le bon objet CWnd pour ma dialogBox puisque c'est elle que je bouge). Et je souhaite, au même moment la mettre en arrière plan.

  10. #10
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par défaut
    bon, si tu es certain d'avoir le bon handle,
    tu peux faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    wndAmin->SetWindowPos(&CWnd::wndBottom,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);

Discussions similaires

  1. 98SE les applis en arrière plan
    Par Speed41 dans le forum Windows 2000/Me/98/95
    Réponses: 3
    Dernier message: 04/01/2007, 17h52
  2. mon arrière plan trop grand pour le bloc
    Par 123quatre dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 07/10/2006, 00h54
  3. [VB6] Affichage d'une PictureBox en arrière plan d'une appli
    Par jerzy59 dans le forum VB 6 et antérieur
    Réponses: 33
    Dernier message: 01/06/2006, 16h32
  4. Réponses: 6
    Dernier message: 19/05/2006, 16h02
  5. Réponses: 5
    Dernier message: 11/03/2005, 16h48

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