Form Maximized et TaskBar [C#] - C#/.NET managed - Programmation
MarshPosté le 29-06-2005 à 10:02:04
1) Alors voici mon problème: il faut deux écrans je crée une nouvelle application C# je met ma form en Maximized dans le concepteur par exemple.. je lance l'application... Ma form est bien maximisée Je déplace la barre des tâches sur un autre écran.. et la (ca le fais chez moi en tout cas) la form reste telle quelle (elle flicker comme si elle allé être redimensionné) et n'est pas automatiquement resizé aux nouvelles dimensions de la WorkingArea... Alors si on la dé-maximize et on la remaximize à la main, elle prends bien une dimension cohérente à savoir la Working area... pourquoi ?? et comment corriger ceci ??
2)WM_WINDOWPOSCHANGED
En mode debug pas a pas, c'est appelé trois fois apres déplacement de la taskbar: un qui m'aggrandi ma fenetre a la bonne workingarea un qui me reduit ma fenettre a la mauvaise workingarea un qui m'aggrandi ma fenetre a la bonne workingarea A la suite de ca ma form est bien redimensionné
En mode normal, c'est appelé deux fois apres déplacement de la taskbar: un qui m'aggrandi ma fenetre a la bonne workingarea un qui me reduit ma fenettre a la mauvaise workingarea A la suite de ca ma form n'a pas bougé
Pourquoi??
3)sur WndProc je log ca dans la console : System.Console.WriteLine("1:" + Screen.AllScreens[0].WorkingArea.Height.ToString()); System.Console.WriteLine("2:" + SystemInformation.WorkingArea.Height.ToString());
On a pas la même chose : WorkingArea de SystemInformation évolue selon l'évolution de la barre des taches WorkingArea de Screen reste pareil Pourquoi?? Comment faire pour obtenir avec systemInformation la workingarea d'autres ecrans??
Marsh Posté le 29-06-2005 à 10:02:04
1)
Alors voici mon problème:
il faut deux écrans
je crée une nouvelle application C#
je met ma form en Maximized dans le concepteur par exemple..
je lance l'application...
Ma form est bien maximisée
Je déplace la barre des tâches sur un autre écran..
et la (ca le fais chez moi en tout cas) la form reste telle quelle (elle flicker comme si elle allé être redimensionné) et n'est pas automatiquement resizé aux nouvelles dimensions de la WorkingArea...
Alors si on la dé-maximize et on la remaximize à la main, elle prends bien une dimension cohérente à savoir la Working area... pourquoi ?? et comment corriger ceci ??
2)WM_WINDOWPOSCHANGED
En mode debug pas a pas, c'est appelé trois fois apres déplacement de la taskbar:
un qui m'aggrandi ma fenetre a la bonne workingarea
un qui me reduit ma fenettre a la mauvaise workingarea
un qui m'aggrandi ma fenetre a la bonne workingarea
A la suite de ca ma form est bien redimensionné
En mode normal, c'est appelé deux fois apres déplacement de la taskbar:
un qui m'aggrandi ma fenetre a la bonne workingarea
un qui me reduit ma fenettre a la mauvaise workingarea
A la suite de ca ma form n'a pas bougé
Pourquoi??
3)sur WndProc je log ca dans la console :
System.Console.WriteLine("1:" + Screen.AllScreens[0].WorkingArea.Height.ToString());
System.Console.WriteLine("2:" + SystemInformation.WorkingArea.Height.ToString());
On a pas la même chose :
WorkingArea de SystemInformation évolue selon l'évolution de la barre des taches
WorkingArea de Screen reste pareil
Pourquoi??
Comment faire pour obtenir avec systemInformation la workingarea d'autres ecrans??
4) le code
Merci pour tout l'aide que vous pourrez m'apporter