J'ai une fenêtre d'application qui couvre l'écran et il y a plusieurs fenêtres d'outils mineurs qui sont masquées par défaut et leurs propriétés 'Propriétaire' sont définies dans cette fenêtre principale.Pourquoi le fait de masquer une fenêtre possédée change-t-il d'application dans WinForms (.NET)?
Lorsque je montre une fenêtre d'outils et que je clique sur l'un de ses boutons, elle se cache pour afficher une autre fenêtre. Lorsque je cache une autre fenêtre d'outils Windows change d'app comme lorsque vous appuyez sur alt + tab. Le seul moyen d'empêcher cela est de cliquer sur la fenêtre principale de l'application avant de fermer (cacher) la fenêtre de l'outil.
Pourquoi la commutation d'application se produit-elle et comment l'éviter? Eh bien, je peux dire explicitement ces fenêtres pour mettre la fenêtre principale sur hide (je n'ai pas encore essayé, mais je n'aime pas faire cela.) Cela se produit uniquement lorsque la propriété Owner est définie sur les fenêtres pour empêcher eux de montrer derrière la fenêtre principale.
ps: Cette application plein écran est un jeu et les fenêtres sont les menus et les écrans de réglage, etc ...
La perte totale de focus peut-être la raison. Mais il y a un problème ... La fenêtre principale est toujours activée mais elle semble perdre le focus ou ne pas le récupérer. Et à propos de la capture de la souris hmmm. Donc se cacher une fenêtre en réponse à un clic sur un bouton est faux? Je ne peux pas le tester maintenant, je suis sur Linux. Peut-être quand je rentrerai à la maison. Et il y a des problèmes plus sérieux avec Mono. – Calmarius
Il est essentiel de documenter une telle configuration non standard dans votre question. Personne ne peut vous donner une réponse précise sans le savoir. Ne marquez pas une question "windows" lorsque vous exécutez réellement linux. –
Je ne peux pas amener mon ordinateur de bureau avec moi à l'université ... Et le linux est sur mon ordinateur portable et pas de fenêtres dessus ... Maintenant, je suis à la maison et j'espère pouvoir résoudre ce problème ce soir. – Calmarius