Bonjour tout le monde,
Est-ce que j'ai la berlue, ou sous Windows 10, MessageBox.Show affiche un message au milieu de l'écran ?
Sous Windows 11 non, j'ai un formulaire qui occupe (à la louche) le tiers inférieur de l'écran, eh bien le MessageBox va se cacher partiellement derrière, ce qui fait que pour que les boutons soient visibles pour pouvoir cliquer dessus, il faut d'abord aller viser la barre de titre du message, pour faire un glissé de souris pour le faire monter. À la limite, si j'étais moins contrariant je validerais au clavier.
Il y a un an ou deux, pour des sombres histoires de bouton par défaut, j'ai joué à récupérer le hWnd du message depuis un Timer, sur la base du titre du message, que pour cet effet il a fallu que je choisisse un minimum exotique.
Est-ce qu'il va falloir de nouveau plonger là-dedans ?
Ou est-ce qu'on peut faire de la programmation propre, avec C# sous Windows ?
Parce que le coup du timer pour rectifier les propriétés par défaut, on est bien d'accord que c'est du bricolage ?
***
Alors on peut rappeler le polisson en passant en premier paramètre du MessageBox :
IWin32Window w = Control.FromHandle(this.Handle);
Il va encore au niveau du formulaire, mais cette fois, devant.
Quel pouvait bien être l'intérêt d'afficher le message si bas sur l'écran, à part obliger à donner le formulaire comme parent du message ?
Partager