Bonjour,
j'ai �crit une librairie comportant une fen�tre d'affichage graphique compl�tement "custom" (enfin, bas�e sur les CWnd).
L'objet comprend plusieurs sous CWnd (il y a des "bandeaux" d'option � gauche et en haut, une "status bar" et un r�glage d'histogramme interactif � droite).
Tout fonctionne tr�s bien. Mais il y a un bug dont je n'arrive pas � me d�patouiller. La fen�tre centrale (celle o� l'image est affich�e) permet de zoomer/dezoomer en utilisant la molette de la souris (j'avais d�j� post� une discussion ici qui n'est que partiellement r�solue). Pour rendre actif le zoom/dezoom, la seule mani�re que j'ai trouv�, c'est d'invoquer un "SetFocus" lorsque la souris se trouve sur la fen�tre, autrement, le WM_MOUSEWHEEL n'est pas g�n�r� dans cette fen�tre.
Le probl�me est que lorsqu'une autre fen�tre flottante (de mon appli) se trouve au-dessus, il m'est impossible de retourner le focus � cette fen�tre qui est dessus. c'est tr�s probl�matique car dans mon appli j'ai une petite fen�tre qui, lorsqu'elle est compl�tement inscrite dans la zone graphique, n'est plus activable et c'est assez p�nible.
Lorsqu'une autre fen�tre d'une appli ind�pendante est par-dessus, il n'y a pas se probl�me: la fen�tre par dessus prend le focus d�s que la souris passe dessus.
Pour illustrer, voici deux images o� on voit la fl�che jaune qui correspond � la position de mon pointeur souris. Lorsqu'il est sous la fen�tre (avec un bandeau rouge), celle-ci ne r�cup�re pas le focus (comme j'ai expliqu�, cette fen�tre est une sous fen�tre de mon appli, mais pas une fen�tre enfant de mon display graphique).
Voil�, merci d'avance pour tout commentaire/aide qui pourrait m'aider � r�gler ce bug.
Gorgo Treize.
PS: pour ceux qui se poseraient la question, les trac�s de ligne anti-alias�es dans la fen�tre sont g�n�r�s avec AGG (Anti Grain Geometry).
Partager