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 :

Problème de superposition de fenetre


Sujet :

MFC

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juillet 2005
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 92
    Points : 39
    Points
    39
    Par défaut Problème de superposition de fenetre
    Salut a tous.

    Ca fait quelque temps que je dev en VC mais jusque la je n'avais jamais eu a me passer des MFC (je sais c'est mal ). Alors voila. Apres quelques heures de galere pour tout comprendre je me retrouves avec deux problemes que je n'arrives pas a résoudre :

    - Superposition des fenetres : Le pire. Ma premiere dlb s'ouvre sans le moindre probleme, pas de bug graphique rien. Mais voila... Des que j'ouvre la seconde, les dlg se superpose et je fini avec un affichage... inutilisable. Je ne peux malheuresement pas vous faire de ss car c'est un dev pour win CE sur ces saloperies de douchettes logistiques :/
    Voila le code que j'utilise pour l'ouverture de mes fenetres :

    case IDC_NONCUM:
    DialogBox(hInst, (LPCTSTR)IDD_SAISIE, hWnd, (DLGPROC)Saisie);
    break;

    - La c'est encore plus con... je n'arrive pas a fermer ma fenetre principale. Les filles pas de prob mais la main impossible.

    case IDC_QUITTER:
    DestroyWindow(hWnd);
    break;

    Merci d'avance

  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
    Par défaut
    salut,
    non c'est pas mal ,
    un conseil repart en MFC ,tu vas galerer en win32...

  3. #3
    Nouveau membre du Club
    Inscrit en
    Juillet 2005
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 92
    Points : 39
    Points
    39
    Par défaut
    ca serai avec grand plaisir simplement impossible de gerer correctement le laser de la douchette en MFC... Le produit n'a pas vraiment ete prevu pour :p

  4. #4
    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
    ah bon pourquoi ?
    elle ne remplit ps le buffer clavier?
    tu auras les memes problemes en win32 .


  5. #5
    Nouveau membre du Club
    Inscrit en
    Juillet 2005
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 92
    Points : 39
    Points
    39
    Par défaut
    A ce moment la quelqu'un pourrait il me dire comment ajouter des evenements qui n'existent pas de base dans les MFC? Je connais le code renvoyer mais je ne sais pas comment le traiter...

  6. #6
    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
    et bien quels evenements ?
    sinon voir faq:
    http://c.developpez.com/faq/vc/?page...dMessageFilter

  7. #7
    Nouveau membre du Club
    Inscrit en
    Juillet 2005
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 92
    Points : 39
    Points
    39
    Par défaut
    Voila les events :

    enum tagUSERMSGS
    {
    UM_SCAN = WM_USER + 0x200,
    UM_STARTSCANNING,
    UM_STOPSCANNING
    };

    D'ou une gestion plus facile en win32 avec les callback..

  8. #8
    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
    donc je suppose des messages windows tout bete ?

    pour les messages prives voir ce post dans le post it faq:
    http://www.developpez.net/forums/vie...567222#1567222

  9. #9
    Nouveau membre du Club
    Inscrit en
    Juillet 2005
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 92
    Points : 39
    Points
    39
    Par défaut
    Ahhh voila qui est interessant

    Merci beaucoup

  10. #10
    Nouveau membre du Club
    Inscrit en
    Juillet 2005
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 92
    Points : 39
    Points
    39
    Par défaut
    Au risque de faire le lourd.. Ca nemarche pas chez moi...

    J'ai bien creer les nouveaux messages

    #define UM_SCAN WM_USER+0x200
    #define UM_STARTSCANNING UM_SCAN+1
    #define UM_STOPSCANNING UM_STARTSCANNING+1

    J'ai bien ajouter les fonctions dans le .h

    //{{AFX_MSG(CLogistikDlg)
    virtual BOOL OnInitDialog();
    afx_msg void Onannuler();
    afx_msg void OnChangeGencode();
    //}}AFX_MSG
    void OnScan(WPARAM wparam,LPARAM lparam);
    void OnStartScan(WPARAM wparam,LPARAM lparam);
    void OnStopScan(WPARAM wparam,LPARAM lparam);
    DECLARE_MESSAGE_MAP()


    Et pour finir, j'ai bien mis dans le .cpp

    ON_MESSAGE(UM_SCAN, OnScan)
    ON_MESSAGE(UM_STARTSCANNING, OnStartScan)
    ON_MESSAGE(UM_STOPSCANNING, OnStopScan)
    //}}AFX_MSG_MAP
    END_MESSAGE_MAP()

    Mais quand j'appui sur la touche qui est sensée réagir, rien. Et oui jai bien creer mes fonctions.

    void CLogistikDlg::OnStartScan(WPARAM wparam, LPARAM lparam)
    {
    m_pParentWnd->GetActiveWindow();
    CDialog::EndDialog(1);
    }

    Les trois font la meme chose pour pouvoir tester...

    Quelqu'un aurait il une idée ?

  11. #11
    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
    Je suppose que tu dois indiquer quelque part la fenêtre ou doit être envoyé les messages privés ?
    si c'est pas le cas ça doit être la fenêtre principale d'application..
    Tu as spy avec EVC ?
    si c'est le cas il serait intéressant de voir si ces messages sont bien envoyés.


  12. #12
    Nouveau membre du Club
    Inscrit en
    Juillet 2005
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 92
    Points : 39
    Points
    39
    Par défaut
    Hum mais bien sur que je fais ca... Enfin peut être... bon pour être franc pas du tout. Je ne pensais pas que le fait de travailler sur un matos autre qu'un simple PC puisses etre aussi chiant...

    J'ai regardé sur MSDN et sur les tuto mais je n'arrives pas a trouver une fonction permettant de rediriger les messages privés... Je sens que je vais me pendre avant la fin de la journée...

    Pourrait tu, dans ta grande générosité m'aiguiller... Attention hein, sinon tu aira ma mort sur la conscience

  13. #13
    Nouveau membre du Club
    Inscrit en
    Juillet 2005
    Messages
    92
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 92
    Points : 39
    Points
    39
    Par défaut
    Bon je viens de voir avec mon Boss... Il le veut en Win32... Donc merci quand meme pour l'idée mais je vais pas avoir le choix...

    Je reviens donc a ma premiere question...

    Est ce que quelqu'un saurait pourquoi lorsque je cree une fenetre, seul les controles appraissent en superposition avec la fenetre principale ?

    DialogBox(hInst, MAKEINTRESOURCE(IDD_SAISIE), hWnd, (DLGPROC)Saisie);
    break;

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 38
    Points : 40
    Points
    40
    Par défaut
    Bonjour,

    Je programme très peu en Win32 sans MFC mais lorsqu'on crée une dlg,
    ne faut-il pas dans la fonction WindowProc qui gère les événements de la dlg (programmée par le développeur), intercepter l'événement WM_PAINT
    pour gérer tous ce qui est affichage ?

  15. #15
    Inactif  

    Homme Profil pro
    Ingénieur test de performance
    Inscrit en
    Décembre 2003
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur test de performance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 986
    Points : 2 605
    Points
    2 605
    Par défaut
    De part le peu d'information, je dirais que tu utilises le même handle pour toutes tes fenêtres (et c'est pas bien).

Discussions similaires

  1. Problème de superposition dans un formulaire
    Par vallica dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 17/01/2007, 16h20
  2. Problème de superposition d'éléments
    Par navis84 dans le forum Mise en page CSS
    Réponses: 8
    Dernier message: 20/10/2006, 13h00
  3. [C#] Problème de superpositions d'éléments avec MDI
    Par Gold.strike dans le forum Windows Forms
    Réponses: 2
    Dernier message: 24/07/2006, 16h18
  4. problème de superposition de calques
    Par crescendo dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 08/05/2006, 18h27
  5. Problème d'ouverture de fenetre apres saisie d'un formulaire
    Par marsupilami34 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 10/08/2005, 09h52

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