re, jai une question, n'ayant pas plusieurs ecran, je voudrais savoir si
dans chaque ecran, ya un bureau a part entiere avec ses propres fenetres ou
si les fenetres sont partagé entre tous les ecrans? exemple, je prend une
fenetre et elle passe de lecran 1 a 2
ou puis-je trouver de la doc sur la programmation multi ecran, pour ouvrir
une fenetre sur tel ou tel ecran,et aussi les enumerer, connaitre l'ecran
par defaut, la resolution de chacun? merci, 'je sai squ ela question avait
deja étét posé par x, mais a l'époque jen avais pas usage, du coup jai pas
gardé les reponses. :-(
--
-----
http://dark.freezee.org/
- Dark Update v1.0
- Dark Emule v0.44b r4
- Dark Desktop 3D (en cours)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
dark poulpo
est ce qu'une appli qui naccepte pas les multiples instance d'elle meme peut se lancer sur chaque ecran ou pas? ou elle le sera que sur une seule? (en gros est ce que les processus dun ecran sont indepants des autres ecrans? )
merci,
-- ----- http://dark.freezee.org/ - Dark Update v1.0 - Dark Emule v0.44b r4 - Dark Desktop 3D (en cours)
est ce qu'une appli qui naccepte pas les multiples instance d'elle meme peut
se lancer sur chaque ecran ou pas? ou elle le sera que sur une seule? (en
gros est ce que les processus dun ecran sont indepants des autres ecrans? )
merci,
--
-----
http://dark.freezee.org/
- Dark Update v1.0
- Dark Emule v0.44b r4
- Dark Desktop 3D (en cours)
est ce qu'une appli qui naccepte pas les multiples instance d'elle meme peut se lancer sur chaque ecran ou pas? ou elle le sera que sur une seule? (en gros est ce que les processus dun ecran sont indepants des autres ecrans? )
merci,
-- ----- http://dark.freezee.org/ - Dark Update v1.0 - Dark Emule v0.44b r4 - Dark Desktop 3D (en cours)
Jean-Fabrice RABAUTE
dark poulpo wrote:
est ce qu'une appli qui naccepte pas les multiples instance d'elle meme peut se lancer sur chaque ecran ou pas? ou elle le sera que sur une seule? (en gros est ce que les processus dun ecran sont indepants des autres ecrans? )
merci,
Non, une appli qui n'accepte pas les multiples instances ne se lancera qu'une fois, meme si tu as plusieurs ecrans.
Pour ta question initiale, je ne suis pas sur, mais je pense que ca dépend du driver. Par exemple, j'ai mon pc portable avec un ecran plat connecté. Dans ce cas, ma barre des taches windows n'est que sur l'ecran plat et pas sur l'ecran de portable, mais bien sur je peux faire passer les fenetres d'un ecran a l'autre. Un autre exemple, pour des cartes graphiques avec 2 sorties ou on branche 2 ecrans donc, la barre des taches peut etre etendue aux 2 ecrans, et le driver fourni avec la carte graphique peut gerer l'ouverture des fenetres sur tel ou tel ecran (ca peut se configurer) en fonction de telle ou telle appli.
http://www.debugbar.com : The most advanced WEB development tool for Internet Explorer http://www.core-services.fr - {Enjoy the future today}
dark poulpo wrote:
est ce qu'une appli qui naccepte pas les multiples instance d'elle meme peut
se lancer sur chaque ecran ou pas? ou elle le sera que sur une seule? (en
gros est ce que les processus dun ecran sont indepants des autres ecrans? )
merci,
Non, une appli qui n'accepte pas les multiples instances ne se lancera
qu'une fois, meme si tu as plusieurs ecrans.
Pour ta question initiale, je ne suis pas sur, mais je pense que ca
dépend du driver.
Par exemple, j'ai mon pc portable avec un ecran plat connecté. Dans ce
cas, ma barre des taches windows n'est que sur l'ecran plat et pas sur
l'ecran de portable, mais bien sur je peux faire passer les fenetres
d'un ecran a l'autre.
Un autre exemple, pour des cartes graphiques avec 2 sorties ou on
branche 2 ecrans donc, la barre des taches peut etre etendue aux 2
ecrans, et le driver fourni avec la carte graphique peut gerer
l'ouverture des fenetres sur tel ou tel ecran (ca peut se configurer) en
fonction de telle ou telle appli.
est ce qu'une appli qui naccepte pas les multiples instance d'elle meme peut se lancer sur chaque ecran ou pas? ou elle le sera que sur une seule? (en gros est ce que les processus dun ecran sont indepants des autres ecrans? )
merci,
Non, une appli qui n'accepte pas les multiples instances ne se lancera qu'une fois, meme si tu as plusieurs ecrans.
Pour ta question initiale, je ne suis pas sur, mais je pense que ca dépend du driver. Par exemple, j'ai mon pc portable avec un ecran plat connecté. Dans ce cas, ma barre des taches windows n'est que sur l'ecran plat et pas sur l'ecran de portable, mais bien sur je peux faire passer les fenetres d'un ecran a l'autre. Un autre exemple, pour des cartes graphiques avec 2 sorties ou on branche 2 ecrans donc, la barre des taches peut etre etendue aux 2 ecrans, et le driver fourni avec la carte graphique peut gerer l'ouverture des fenetres sur tel ou tel ecran (ca peut se configurer) en fonction de telle ou telle appli.
http://www.debugbar.com : The most advanced WEB development tool for Internet Explorer http://www.core-services.fr - {Enjoy the future today}
adebaene
dark poulpo wrote:
re, jai une question, n'ayant pas plusieurs ecran, je voudrais
savoir si
dans chaque ecran, ya un bureau a part entiere avec ses propres
fenetres ou
si les fenetres sont partagé entre tous les ecrans? exemple, je
prend une
fenetre et elle passe de lecran 1 a 2
Ca dépend du mode de fonctionnement choisi: - un écran dit "primaire" affiche toujours la barre des tâches. - les autres écrans peuvent participer au bureau. Dans ce cas, tu peux faire passer les fenêtres d'un écran à l'autre, ou avoir une fenêtre à cheval sur 2 écrans. - Si un écran ne participe pas au bureau, il peut êter utilisé par des appli plein écran genre DirectX. - Certaines cartes vidéo possèdent un mode "mirror" où les 2 écrans affichent strictement la même chose.
Le tout se configure dans le panneau de conf d'affichage, onglet "Settings"
ou puis-je trouver de la doc sur la programmation multi ecran, pour
ouvrir
une fenetre sur tel ou tel ecran,et aussi les enumerer, connaitre
l'ecran
par defaut, la resolution de chacun?
Pourquoi poser la question alors que tu sais bien que la réponse va toujours être la même : dans MSDN : http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/moni tor_53sj.asp?frame=true Arnaud
dark poulpo wrote:
re, jai une question, n'ayant pas plusieurs ecran, je voudrais
savoir si
dans chaque ecran, ya un bureau a part entiere avec ses propres
fenetres ou
si les fenetres sont partagé entre tous les ecrans? exemple, je
prend une
fenetre et elle passe de lecran 1 a 2
Ca dépend du mode de fonctionnement choisi:
- un écran dit "primaire" affiche toujours la barre des tâches.
- les autres écrans peuvent participer au bureau. Dans ce cas, tu peux
faire passer les fenêtres d'un écran à l'autre, ou avoir une
fenêtre à cheval sur 2 écrans.
- Si un écran ne participe pas au bureau, il peut êter utilisé par
des appli plein écran genre DirectX.
- Certaines cartes vidéo possèdent un mode "mirror" où les 2 écrans
affichent strictement la même chose.
Le tout se configure dans le panneau de conf d'affichage, onglet
"Settings"
ou puis-je trouver de la doc sur la programmation multi ecran, pour
ouvrir
une fenetre sur tel ou tel ecran,et aussi les enumerer, connaitre
l'ecran
par defaut, la resolution de chacun?
Pourquoi poser la question alors que tu sais bien que la réponse va
toujours être la même : dans MSDN :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/moni tor_53sj.asp?frame=true
Arnaud
re, jai une question, n'ayant pas plusieurs ecran, je voudrais
savoir si
dans chaque ecran, ya un bureau a part entiere avec ses propres
fenetres ou
si les fenetres sont partagé entre tous les ecrans? exemple, je
prend une
fenetre et elle passe de lecran 1 a 2
Ca dépend du mode de fonctionnement choisi: - un écran dit "primaire" affiche toujours la barre des tâches. - les autres écrans peuvent participer au bureau. Dans ce cas, tu peux faire passer les fenêtres d'un écran à l'autre, ou avoir une fenêtre à cheval sur 2 écrans. - Si un écran ne participe pas au bureau, il peut êter utilisé par des appli plein écran genre DirectX. - Certaines cartes vidéo possèdent un mode "mirror" où les 2 écrans affichent strictement la même chose.
Le tout se configure dans le panneau de conf d'affichage, onglet "Settings"
ou puis-je trouver de la doc sur la programmation multi ecran, pour
ouvrir
une fenetre sur tel ou tel ecran,et aussi les enumerer, connaitre
l'ecran
par defaut, la resolution de chacun?
Pourquoi poser la question alors que tu sais bien que la réponse va toujours être la même : dans MSDN : http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/moni tor_53sj.asp?frame=true Arnaud
Bertrand Lenoir-Welter
> re, jai une question, n'ayant pas plusieurs ecran, je voudrais savoir si dans chaque ecran, ya un bureau a part entiere avec ses propres fenetres ou si les fenetres sont partagé entre tous les ecrans? exemple, je prend une fenetre et elle passe de lecran 1 a 2
Je bosse ici avec un PC a double écran. C'est un vrai bonheur pour développer : on a l'IDE sur l'un et l'appli en cours de debugging sur l'autre, ce qui permet d'avoir des breakpoints sans perdre la visu de l'appli ni la souris.
Pour ce qui est de la gestion, en fait le bureau peut être configuré soit en une seule zone qui couvre les deux écrans, à condition qu'ils aient la même résolution horizontale ou verticale selon comment on les juxtapose ; soit en deux zones dont on peut avoir les coordonnées avec GetSystemMetrics(SM_C*FULLSCREEN) et GetSystemMetrics(SM_C*SCREEN). Ca marche avec des écrans à résolutions différentes (c'est mon cas).
Si ton appli mémorise les coordonnées de son cadre écran (position & dimensions) et les ramène au lancement suivant, elle reviendra à sa place quelle qu'elle soit, y compris à cheval sur les deux écrans.
ou puis-je trouver de la doc sur la programmation multi ecran, pour ouvrir une fenetre sur tel ou tel ecran,et aussi les enumerer, connaitre l'ecran par defaut, la resolution de chacun? merci, 'je sai squ ela question avait deja étét posé par x, mais a l'époque jen avais pas usage, du coup jai pas gardé les reponses. :-(
Considère que deux écrans font un grand écran virtuel et c'est tout. Ta carte graphique sait se débrouiller avec ça. Le seul truc dont il faut tenir compte, ce que beaucoup de logiciels ne font hélas pas, c'est que a taille maxi de l'écran n'est pas forcément celle retournée par GetSystemMetrics(SM_C*FULLSCREEN), ce qui les fait revenir à chaque fois sur l'écran qui a le bureau Windows même si on les a fermées sur l'autre. On fait avec.
Par contre, le fait d'avoir deux écrans n'a aucun rapport avec les instances de l'appli. C'est juste au niveau carte graphique que ça change. Pour Windows, t'as une instance de ton appli quel que soit sa position d'affichage. Si ton appli ne doit accepter deux instances que si elles sont sur deux écrans différents, c'est à toi de le gérer - et empêcher qu'on les déplace d'un écran à l'autre. Ca me semble pas bien sorcier à réaliser.
Note que j'ai pas vu le cas où on a deux écrans qui font tourner deux sessions Windows différentes, ou même deux systèmes différents (j'ai vu ça dans une vie antérieure avec AIX d'un côté et NextStep de l'autre sur une station RS-6000), c'était très joli - et assez inutile. Si c'est là ton cas, j'en sais pas plus et désolé pour ce qui précède.
> re, jai une question, n'ayant pas plusieurs ecran, je voudrais savoir si
dans chaque ecran, ya un bureau a part entiere avec ses propres fenetres ou
si les fenetres sont partagé entre tous les ecrans? exemple, je prend une
fenetre et elle passe de lecran 1 a 2
Je bosse ici avec un PC a double écran. C'est un vrai bonheur pour
développer : on a l'IDE sur l'un et l'appli en cours de debugging sur
l'autre, ce qui permet d'avoir des breakpoints sans perdre la visu de
l'appli ni la souris.
Pour ce qui est de la gestion, en fait le bureau peut être configuré
soit en une seule zone qui couvre les deux écrans, à condition qu'ils
aient la même résolution horizontale ou verticale selon comment on les
juxtapose ; soit en deux zones dont on peut avoir les coordonnées avec
GetSystemMetrics(SM_C*FULLSCREEN) et GetSystemMetrics(SM_C*SCREEN). Ca
marche avec des écrans à résolutions différentes (c'est mon cas).
Si ton appli mémorise les coordonnées de son cadre écran (position &
dimensions) et les ramène au lancement suivant, elle reviendra à sa
place quelle qu'elle soit, y compris à cheval sur les deux écrans.
ou puis-je trouver de la doc sur la programmation multi ecran, pour ouvrir
une fenetre sur tel ou tel ecran,et aussi les enumerer, connaitre l'ecran
par defaut, la resolution de chacun? merci, 'je sai squ ela question avait
deja étét posé par x, mais a l'époque jen avais pas usage, du coup jai pas
gardé les reponses. :-(
Considère que deux écrans font un grand écran virtuel et c'est tout. Ta
carte graphique sait se débrouiller avec ça. Le seul truc dont il faut
tenir compte, ce que beaucoup de logiciels ne font hélas pas, c'est que
a taille maxi de l'écran n'est pas forcément celle retournée par
GetSystemMetrics(SM_C*FULLSCREEN), ce qui les fait revenir à chaque fois
sur l'écran qui a le bureau Windows même si on les a fermées sur
l'autre. On fait avec.
Par contre, le fait d'avoir deux écrans n'a aucun rapport avec les
instances de l'appli. C'est juste au niveau carte graphique que ça
change. Pour Windows, t'as une instance de ton appli quel que soit sa
position d'affichage. Si ton appli ne doit accepter deux instances que
si elles sont sur deux écrans différents, c'est à toi de le gérer - et
empêcher qu'on les déplace d'un écran à l'autre. Ca me semble pas bien
sorcier à réaliser.
Note que j'ai pas vu le cas où on a deux écrans qui font tourner deux
sessions Windows différentes, ou même deux systèmes différents (j'ai vu
ça dans une vie antérieure avec AIX d'un côté et NextStep de l'autre sur
une station RS-6000), c'était très joli - et assez inutile. Si c'est là
ton cas, j'en sais pas plus et désolé pour ce qui précède.
> re, jai une question, n'ayant pas plusieurs ecran, je voudrais savoir si dans chaque ecran, ya un bureau a part entiere avec ses propres fenetres ou si les fenetres sont partagé entre tous les ecrans? exemple, je prend une fenetre et elle passe de lecran 1 a 2
Je bosse ici avec un PC a double écran. C'est un vrai bonheur pour développer : on a l'IDE sur l'un et l'appli en cours de debugging sur l'autre, ce qui permet d'avoir des breakpoints sans perdre la visu de l'appli ni la souris.
Pour ce qui est de la gestion, en fait le bureau peut être configuré soit en une seule zone qui couvre les deux écrans, à condition qu'ils aient la même résolution horizontale ou verticale selon comment on les juxtapose ; soit en deux zones dont on peut avoir les coordonnées avec GetSystemMetrics(SM_C*FULLSCREEN) et GetSystemMetrics(SM_C*SCREEN). Ca marche avec des écrans à résolutions différentes (c'est mon cas).
Si ton appli mémorise les coordonnées de son cadre écran (position & dimensions) et les ramène au lancement suivant, elle reviendra à sa place quelle qu'elle soit, y compris à cheval sur les deux écrans.
ou puis-je trouver de la doc sur la programmation multi ecran, pour ouvrir une fenetre sur tel ou tel ecran,et aussi les enumerer, connaitre l'ecran par defaut, la resolution de chacun? merci, 'je sai squ ela question avait deja étét posé par x, mais a l'époque jen avais pas usage, du coup jai pas gardé les reponses. :-(
Considère que deux écrans font un grand écran virtuel et c'est tout. Ta carte graphique sait se débrouiller avec ça. Le seul truc dont il faut tenir compte, ce que beaucoup de logiciels ne font hélas pas, c'est que a taille maxi de l'écran n'est pas forcément celle retournée par GetSystemMetrics(SM_C*FULLSCREEN), ce qui les fait revenir à chaque fois sur l'écran qui a le bureau Windows même si on les a fermées sur l'autre. On fait avec.
Par contre, le fait d'avoir deux écrans n'a aucun rapport avec les instances de l'appli. C'est juste au niveau carte graphique que ça change. Pour Windows, t'as une instance de ton appli quel que soit sa position d'affichage. Si ton appli ne doit accepter deux instances que si elles sont sur deux écrans différents, c'est à toi de le gérer - et empêcher qu'on les déplace d'un écran à l'autre. Ca me semble pas bien sorcier à réaliser.
Note que j'ai pas vu le cas où on a deux écrans qui font tourner deux sessions Windows différentes, ou même deux systèmes différents (j'ai vu ça dans une vie antérieure avec AIX d'un côté et NextStep de l'autre sur une station RS-6000), c'était très joli - et assez inutile. Si c'est là ton cas, j'en sais pas plus et désolé pour ce qui précède.
Vincent Burel
"Bertrand Lenoir-Welter" wrote in message news:41ec0962$0$19400$
> re, jai une question, n'ayant pas plusieurs ecran, je voudrais savoir
si
> dans chaque ecran, ya un bureau a part entiere avec ses propres fenetres
ou
> si les fenetres sont partagé entre tous les ecrans? exemple, je prend
une
> fenetre et elle passe de lecran 1 a 2
Pour ce qui est de la gestion, en fait le bureau peut être configuré soit en une seule zone qui couvre les deux écrans, à condition qu'ils aient la même résolution horizontale ou verticale selon comment on les juxtapose ; soit en deux zones dont on peut avoir les coordonnées avec GetSystemMetrics(SM_C*FULLSCREEN) et GetSystemMetrics(SM_C*SCREEN). Ca marche avec des écrans à résolutions différentes (c'est mon cas).
Pour info : j'avais posé la question ici et personne ne m'avait répondu... obtenir les largeur hauteur d'un écran virtuel partagé sur 2 moniteurs (ou plus)... depuis j'ai trouvé une solution qui a l'air de marcher sur tout windows avec toute carte dual screen au moins (et 4 screen à fortiori).
première étape on essai dx=GetSystemMetrics(SM_CXVIRTUALSCREEN); dy=GetSystemMetrics(SM_CYVIRTUALSCREEN);
si dx == 0 ou dy == 0 on essai ca :
RECT rect; SystemParametersInfo(SPI_GETWORKAREA,0,(PVOID)&rect,0); dx=rect.right-rect.left; dy=rect.bottom-rect.top;
VB
"Bertrand Lenoir-Welter" <bertrand.2003@galaad.net> wrote in message
news:41ec0962$0$19400$8fcfb975@news.wanadoo.fr...
> re, jai une question, n'ayant pas plusieurs ecran, je voudrais savoir
si
> dans chaque ecran, ya un bureau a part entiere avec ses propres fenetres
ou
> si les fenetres sont partagé entre tous les ecrans? exemple, je prend
une
> fenetre et elle passe de lecran 1 a 2
Pour ce qui est de la gestion, en fait le bureau peut être configuré
soit en une seule zone qui couvre les deux écrans, à condition qu'ils
aient la même résolution horizontale ou verticale selon comment on les
juxtapose ; soit en deux zones dont on peut avoir les coordonnées avec
GetSystemMetrics(SM_C*FULLSCREEN) et GetSystemMetrics(SM_C*SCREEN). Ca
marche avec des écrans à résolutions différentes (c'est mon cas).
Pour info :
j'avais posé la question ici et personne ne m'avait répondu... obtenir les
largeur hauteur d'un écran virtuel partagé sur 2 moniteurs (ou plus)...
depuis j'ai trouvé une solution qui a l'air de marcher sur tout windows avec
toute carte dual screen au moins (et 4 screen à fortiori).
première étape on essai
dx=GetSystemMetrics(SM_CXVIRTUALSCREEN);
dy=GetSystemMetrics(SM_CYVIRTUALSCREEN);
si dx == 0 ou dy == 0 on essai ca :
RECT rect;
SystemParametersInfo(SPI_GETWORKAREA,0,(PVOID)&rect,0);
dx=rect.right-rect.left;
dy=rect.bottom-rect.top;
"Bertrand Lenoir-Welter" wrote in message news:41ec0962$0$19400$
> re, jai une question, n'ayant pas plusieurs ecran, je voudrais savoir
si
> dans chaque ecran, ya un bureau a part entiere avec ses propres fenetres
ou
> si les fenetres sont partagé entre tous les ecrans? exemple, je prend
une
> fenetre et elle passe de lecran 1 a 2
Pour ce qui est de la gestion, en fait le bureau peut être configuré soit en une seule zone qui couvre les deux écrans, à condition qu'ils aient la même résolution horizontale ou verticale selon comment on les juxtapose ; soit en deux zones dont on peut avoir les coordonnées avec GetSystemMetrics(SM_C*FULLSCREEN) et GetSystemMetrics(SM_C*SCREEN). Ca marche avec des écrans à résolutions différentes (c'est mon cas).
Pour info : j'avais posé la question ici et personne ne m'avait répondu... obtenir les largeur hauteur d'un écran virtuel partagé sur 2 moniteurs (ou plus)... depuis j'ai trouvé une solution qui a l'air de marcher sur tout windows avec toute carte dual screen au moins (et 4 screen à fortiori).
première étape on essai dx=GetSystemMetrics(SM_CXVIRTUALSCREEN); dy=GetSystemMetrics(SM_CYVIRTUALSCREEN);
si dx == 0 ou dy == 0 on essai ca :
RECT rect; SystemParametersInfo(SPI_GETWORKAREA,0,(PVOID)&rect,0); dx=rect.right-rect.left; dy=rect.bottom-rect.top;
VB
Bertrand Lenoir-Welter
> Pour ce qui est de la gestion, en fait le bureau peut être configuré soit en une seule zone qui couvre les deux écrans, à condition qu'ils aient la même résolution horizontale ou verticale selon comment on les juxtapose ; soit en deux zones dont on peut avoir les coordonnées avec GetSystemMetrics(SM_C*FULLSCREEN) et GetSystemMetrics(SM_C*SCREEN). Ca marche avec des écrans à résolutions différentes (c'est mon cas).
Bon, j'ai encore dit une connerie. GetSystemMetrics(SM_C*FULLSCREEN) donne la taille du bureau (taille de l'écran principal qui contient le bureau moins la taille de la barre des tâches), et il faut utiliser GetSystemMetrics(SM_C*MAXTRACK) pour avoir la taille maxi des deux écrans juxtaposés.
Ici, j'ai un écran principal 1600x1200 qui contient le bureau Windows, plus un écran secondaire 1280x1024 placé à droite du principal, avec coïncidence des bords inférieurs. Ca donne donc une résolution de (1600+1280)x1200 (manque donc une bande horizontale en haut de l'écran de droite, inaccessible à la souris). GetSystemMetrics(SM_C*MAXTRACK) me donne 2892x1212, donc 12 pixels de trop qui doivent correspondre aux bordures et autres qu'on peut obtenir par ailleurs. A vrai dire, je m'en suis jamais soucié.
> Pour ce qui est de la gestion, en fait le bureau peut être configuré
soit en une seule zone qui couvre les deux écrans, à condition qu'ils
aient la même résolution horizontale ou verticale selon comment on les
juxtapose ; soit en deux zones dont on peut avoir les coordonnées avec
GetSystemMetrics(SM_C*FULLSCREEN) et GetSystemMetrics(SM_C*SCREEN). Ca
marche avec des écrans à résolutions différentes (c'est mon cas).
Bon, j'ai encore dit une connerie. GetSystemMetrics(SM_C*FULLSCREEN)
donne la taille du bureau (taille de l'écran principal qui contient le
bureau moins la taille de la barre des tâches), et il faut utiliser
GetSystemMetrics(SM_C*MAXTRACK) pour avoir la taille maxi des deux
écrans juxtaposés.
Ici, j'ai un écran principal 1600x1200 qui contient le bureau Windows,
plus un écran secondaire 1280x1024 placé à droite du principal, avec
coïncidence des bords inférieurs. Ca donne donc une résolution de
(1600+1280)x1200 (manque donc une bande horizontale en haut de l'écran
de droite, inaccessible à la souris). GetSystemMetrics(SM_C*MAXTRACK) me
donne 2892x1212, donc 12 pixels de trop qui doivent correspondre aux
bordures et autres qu'on peut obtenir par ailleurs. A vrai dire, je m'en
suis jamais soucié.
> Pour ce qui est de la gestion, en fait le bureau peut être configuré soit en une seule zone qui couvre les deux écrans, à condition qu'ils aient la même résolution horizontale ou verticale selon comment on les juxtapose ; soit en deux zones dont on peut avoir les coordonnées avec GetSystemMetrics(SM_C*FULLSCREEN) et GetSystemMetrics(SM_C*SCREEN). Ca marche avec des écrans à résolutions différentes (c'est mon cas).
Bon, j'ai encore dit une connerie. GetSystemMetrics(SM_C*FULLSCREEN) donne la taille du bureau (taille de l'écran principal qui contient le bureau moins la taille de la barre des tâches), et il faut utiliser GetSystemMetrics(SM_C*MAXTRACK) pour avoir la taille maxi des deux écrans juxtaposés.
Ici, j'ai un écran principal 1600x1200 qui contient le bureau Windows, plus un écran secondaire 1280x1024 placé à droite du principal, avec coïncidence des bords inférieurs. Ca donne donc une résolution de (1600+1280)x1200 (manque donc une bande horizontale en haut de l'écran de droite, inaccessible à la souris). GetSystemMetrics(SM_C*MAXTRACK) me donne 2892x1212, donc 12 pixels de trop qui doivent correspondre aux bordures et autres qu'on peut obtenir par ailleurs. A vrai dire, je m'en suis jamais soucié.
Vincent Burel
"Bertrand Lenoir-Welter" wrote in message news:41ecd8ee$0$19441$
> Pour ce qui est de la gestion, en fait le bureau peut être configuré > soit en une seule zone qui couvre les deux écrans, à condition qu'ils > aient la même résolution horizontale ou verticale selon comment on les > juxtapose ; soit en deux zones dont on peut avoir les coordonnées avec > GetSystemMetrics(SM_C*FULLSCREEN) et GetSystemMetrics(SM_C*SCREEN). Ca > marche avec des écrans à résolutions différentes (c'est mon cas).
Bon, j'ai encore dit une connerie. GetSystemMetrics(SM_C*FULLSCREEN) donne la taille du bureau (taille de l'écran principal qui contient le bureau moins la taille de la barre des tâches), et il faut utiliser GetSystemMetrics(SM_C*MAXTRACK) pour avoir la taille maxi des deux écrans juxtaposés.
Ici, j'ai un écran principal 1600x1200 qui contient le bureau Windows, plus un écran secondaire 1280x1024 placé à droite du principal, avec coïncidence des bords inférieurs. Ca donne donc une résolution de (1600+1280)x1200 (manque donc une bande horizontale en haut de l'écran de droite, inaccessible à la souris). GetSystemMetrics(SM_C*MAXTRACK) me donne 2892x1212, donc 12 pixels de trop qui doivent correspondre aux bordures et autres qu'on peut obtenir par ailleurs. A vrai dire, je m'en suis jamais soucié.
Je ne pense pas que SM_CXMAXTRACK marche avec tous les windows et les drivers de carte video à multiple moniteurs. par exemple ici j'ai un G450 qui me renvoie la taille d'une appli maximizée, mais une appli maximizé chez moi, prend la taille du moniteur dans lequel elle se trouvait (pas de tout l'espace virtuel).... ca doit dépendre d'options et du drivers Dual Screen...
Rappel : SM_CxMAXTRACK Default maximum dimensions, in pixels, of a window that has a caption and sizing borders. This metric refers to the entire desktop. The user cannot drag the window frame to a size larger than these dimensions. A window can override these values by processing the WM_GETMINMAXINFO message.
donc ca dépend aussi de comment windows à définit le MINMAXINFO sur les fenêtres...
VB
"Bertrand Lenoir-Welter" <bertrand.2004@galaad.net> wrote in message
news:41ecd8ee$0$19441$8fcfb975@news.wanadoo.fr...
> Pour ce qui est de la gestion, en fait le bureau peut être configuré
> soit en une seule zone qui couvre les deux écrans, à condition qu'ils
> aient la même résolution horizontale ou verticale selon comment on les
> juxtapose ; soit en deux zones dont on peut avoir les coordonnées avec
> GetSystemMetrics(SM_C*FULLSCREEN) et GetSystemMetrics(SM_C*SCREEN). Ca
> marche avec des écrans à résolutions différentes (c'est mon cas).
Bon, j'ai encore dit une connerie. GetSystemMetrics(SM_C*FULLSCREEN)
donne la taille du bureau (taille de l'écran principal qui contient le
bureau moins la taille de la barre des tâches), et il faut utiliser
GetSystemMetrics(SM_C*MAXTRACK) pour avoir la taille maxi des deux
écrans juxtaposés.
Ici, j'ai un écran principal 1600x1200 qui contient le bureau Windows,
plus un écran secondaire 1280x1024 placé à droite du principal, avec
coïncidence des bords inférieurs. Ca donne donc une résolution de
(1600+1280)x1200 (manque donc une bande horizontale en haut de l'écran
de droite, inaccessible à la souris). GetSystemMetrics(SM_C*MAXTRACK) me
donne 2892x1212, donc 12 pixels de trop qui doivent correspondre aux
bordures et autres qu'on peut obtenir par ailleurs. A vrai dire, je m'en
suis jamais soucié.
Je ne pense pas que SM_CXMAXTRACK marche avec tous les windows et les
drivers de carte video à multiple moniteurs. par exemple ici j'ai un G450
qui me renvoie la taille d'une appli maximizée, mais une appli maximizé chez
moi, prend la taille du moniteur dans lequel elle se trouvait (pas de tout
l'espace virtuel).... ca doit dépendre d'options et du drivers Dual
Screen...
Rappel : SM_CxMAXTRACK Default maximum dimensions, in pixels, of a window
that has a caption and sizing borders. This metric refers to the entire
desktop. The user cannot drag the window frame to a size larger than these
dimensions. A window can override these values by processing the
WM_GETMINMAXINFO message.
donc ca dépend aussi de comment windows à définit le MINMAXINFO sur les
fenêtres...
"Bertrand Lenoir-Welter" wrote in message news:41ecd8ee$0$19441$
> Pour ce qui est de la gestion, en fait le bureau peut être configuré > soit en une seule zone qui couvre les deux écrans, à condition qu'ils > aient la même résolution horizontale ou verticale selon comment on les > juxtapose ; soit en deux zones dont on peut avoir les coordonnées avec > GetSystemMetrics(SM_C*FULLSCREEN) et GetSystemMetrics(SM_C*SCREEN). Ca > marche avec des écrans à résolutions différentes (c'est mon cas).
Bon, j'ai encore dit une connerie. GetSystemMetrics(SM_C*FULLSCREEN) donne la taille du bureau (taille de l'écran principal qui contient le bureau moins la taille de la barre des tâches), et il faut utiliser GetSystemMetrics(SM_C*MAXTRACK) pour avoir la taille maxi des deux écrans juxtaposés.
Ici, j'ai un écran principal 1600x1200 qui contient le bureau Windows, plus un écran secondaire 1280x1024 placé à droite du principal, avec coïncidence des bords inférieurs. Ca donne donc une résolution de (1600+1280)x1200 (manque donc une bande horizontale en haut de l'écran de droite, inaccessible à la souris). GetSystemMetrics(SM_C*MAXTRACK) me donne 2892x1212, donc 12 pixels de trop qui doivent correspondre aux bordures et autres qu'on peut obtenir par ailleurs. A vrai dire, je m'en suis jamais soucié.
Je ne pense pas que SM_CXMAXTRACK marche avec tous les windows et les drivers de carte video à multiple moniteurs. par exemple ici j'ai un G450 qui me renvoie la taille d'une appli maximizée, mais une appli maximizé chez moi, prend la taille du moniteur dans lequel elle se trouvait (pas de tout l'espace virtuel).... ca doit dépendre d'options et du drivers Dual Screen...
Rappel : SM_CxMAXTRACK Default maximum dimensions, in pixels, of a window that has a caption and sizing borders. This metric refers to the entire desktop. The user cannot drag the window frame to a size larger than these dimensions. A window can override these values by processing the WM_GETMINMAXINFO message.
donc ca dépend aussi de comment windows à définit le MINMAXINFO sur les fenêtres...
VB
dark poulpo
merci pour vos reponses, et jai pris soin de sauver vos messages pour les etudier des que possible.
-- ----- http://dark.freezee.org/ - Dark Update v1.0 - Dark Emule v0.44b r4 - Dark Desktop 3D (en cours)
merci pour vos reponses, et jai pris soin de sauver vos messages pour les
etudier des que possible.
--
-----
http://dark.freezee.org/
- Dark Update v1.0
- Dark Emule v0.44b r4
- Dark Desktop 3D (en cours)