il semble y avoir une question similaire à ceci ici mais avec le problème 'opposé' (Il ne voulait pas que les événements de souris soient capturés).(C#) Windows Forms - Arrière-plan transparent lors de la capture d'événements de souris?
J'ai un formulaire avec un panneau. La fenêtre est sans bordure et définie à la taille exacte du panneau (à toutes fins pratiques, c'est comme si le panneau flottait librement). Je peux définir BackColor du panneau à SystemColors.Control, puis définissez le TransparencyKey de la fenêtre à la même chose. Cela fonctionne en ce sens qu'il réalise l'effet désiré (transparence), mais le panneau ne peut plus capturer les événements de la souris (ce qui est vital pour la fonctionnalité)!
Existe-t-il un autre moyen de contourner ce problème ou un moyen de réactiver la capture de la souris? J'ai essayé de surcharger OnPaintBackground et de faire un noop, mais cela n'a pas permis d'obtenir une réelle transparence car il ne met pas à jour l'arrière-plan après chaque tick (donc tout ce qui se trouve derrière le panel au tirage initial reste vous déplacez le panneau ou le mettez à jour d'une autre manière). Il a cependant permis au panneau de capturer des événements de souris.
Ce n'est pas si gênant à ce stade du projet, mais je suis tombé sur le problème lors d'un prototype rapide et ça commence à m'énerver maintenant. Si quelqu'un a des conseils, ils seraient très appréciés.
Salut ChrisBD - merci pour votre aide. La méthode ci-dessus "sorte de" travaillé. Je vais continuer à expérimenter avec cela et voir si je peux l'obtenir à zéro. Merci encore! – Beardy
même problème! s'il vous plaît mettre à jour le sujet si vous avez trouvé la solution! – Pedro77