OVH Cloud OVH Cloud

MsgBox

13 réponses
Avatar
EH
Bonjour

Je développe une application windows dualscreen.Quand je fais apparaître une
boîte de dialogue elle apparait alors à cheval sur les deux écrans.Comment
faire pour spécifier les coordonnées de cette boîte.

Merci d'avance à celui ou celle qui me répondra

3 réponses

1 2
Avatar
Zoury
ReSalut ! :O)

La seule façon que je connaisse pour positionner une boite de message
système implique l'utilisation d'APIs.

Voici un exemple (VB6) si ça t'intéresse. Le code de l'exemple permet de
positionner une boite de dialogue, mais principe reste identique.
http://groups.google.com/group/microsoft.public.fr.vb/browse_thread/thread/a12f27e2e7fa5c47/4924f421e4d41234?lnk=st&q=setwindowpos+%2Bsettimer+author:zoury&rnum=2&hl=fr#4924f421e4d41234

si tu as besoin d'aide pour la traduction en .NET n'hésite pas.

--
Cordialement
Yanick
MVP pour Visual Basic

"EH" a écrit dans le message de news:

La configuration de ma carte est volontaire je veux qu'elle soit en
2048*768
pour les besoins d'un autre logiciel et non pas deux écrans de 1024*768.

"Mehdi" a écrit :

On Fri, 4 Nov 2005 07:29:11 -0800, EH wrote:

> Oui c'est bien ça ,j'ai deux écrans (config 2048*768) mais une seule
> feuille
> paramétrée en 1024*768.La msgbox s'affiche au milieu du 2048 alors que
> je
> veux qu'elle s'affiche au milieu du 1024.

Ton histoire donne l'impression que le driver de ta carte video est mal
foutu et indique je ne sais comment a Windows qu'il n'y a qu'un écran de
2048*768 au lieu de 2 écrans de 1024*768. Du coup Windows affiche la
MessageBox au milieu de ce qu'il croit etre un unique écran. Parce qu'ici
j'ai 2 écrans, que Winodows voit bien comme 2 érans, et les MessageBox
s'affiche bien au milieu de l'écran 1 ou 2 mais jamais a cheval entre les
deux.





Avatar
EH
Bonjour
Je trouve ce code bien compliqué pour juste gérer une boîte de dialogue.Je
crois que je vais afficher un formulaire au lieu de cette boîte, ainsi je
pourrais gérer correctement ses coordonnées.

Merci à tous ceux qui m'ont répondu

"Zoury" a écrit :

ReSalut ! :O)

La seule façon que je connaisse pour positionner une boite de message
système implique l'utilisation d'APIs.

Voici un exemple (VB6) si ça t'intéresse. Le code de l'exemple permet de
positionner une boite de dialogue, mais principe reste identique.
http://groups.google.com/group/microsoft.public.fr.vb/browse_thread/thread/a12f27e2e7fa5c47/4924f421e4d41234?lnk=st&q=setwindowpos+%2Bsettimer+author:zoury&rnum=2&hl=fr#4924f421e4d41234

si tu as besoin d'aide pour la traduction en .NET n'hésite pas.

--
Cordialement
Yanick
MVP pour Visual Basic

"EH" a écrit dans le message de news:

> La configuration de ma carte est volontaire je veux qu'elle soit en
> 2048*768
> pour les besoins d'un autre logiciel et non pas deux écrans de 1024*768.
>
> "Mehdi" a écrit :
>
>> On Fri, 4 Nov 2005 07:29:11 -0800, EH wrote:
>>
>> > Oui c'est bien ça ,j'ai deux écrans (config 2048*768) mais une seule
>> > feuille
>> > paramétrée en 1024*768.La msgbox s'affiche au milieu du 2048 alors que
>> > je
>> > veux qu'elle s'affiche au milieu du 1024.
>>
>> Ton histoire donne l'impression que le driver de ta carte video est mal
>> foutu et indique je ne sais comment a Windows qu'il n'y a qu'un écran de
>> 2048*768 au lieu de 2 écrans de 1024*768. Du coup Windows affiche la
>> MessageBox au milieu de ce qu'il croit etre un unique écran. Parce qu'ici
>> j'ai 2 écrans, que Winodows voit bien comme 2 érans, et les MessageBox
>> s'affiche bien au milieu de l'écran 1 ou 2 mais jamais a cheval entre les
>> deux.
>>





Avatar
Sébastien HOUZET
Bonjour,

Je sais qu'il existe un façon pour choisir l'écran d'affichage :
http://msdn.microsoft.com/library/fre/default.asp?url=/library/FRE/cpref/html/frlrfsystemwindowsformsscreenclasstopic.asp

Mais je ne suis pas sur que dans ton cas (pas de écran mais un écran sur
deux écrans) cela marche.

Sinon, en effet, utilisation des APIs pour positionner ta fenetre à
l'endroit où tu le souhaites.

"Zoury" <yanick_lefebvre at hotmail dot com> a écrit dans le message de
news:
ReSalut ! :O)

La seule façon que je connaisse pour positionner une boite de message
système implique l'utilisation d'APIs.

Voici un exemple (VB6) si ça t'intéresse. Le code de l'exemple permet de
positionner une boite de dialogue, mais principe reste identique.
http://groups.google.com/group/microsoft.public.fr.vb/browse_thread/thread/a12f27e2e7fa5c47/4924f421e4d41234?lnk=st&q=setwindowpos+%2Bsettimer+author:zoury&rnum=2&hl=fr#4924f421e4d41234

si tu as besoin d'aide pour la traduction en .NET n'hésite pas.

--
Cordialement
Yanick
MVP pour Visual Basic

"EH" a écrit dans le message de news:

La configuration de ma carte est volontaire je veux qu'elle soit en
2048*768
pour les besoins d'un autre logiciel et non pas deux écrans de 1024*768.

"Mehdi" a écrit :

On Fri, 4 Nov 2005 07:29:11 -0800, EH wrote:

> Oui c'est bien ça ,j'ai deux écrans (config 2048*768) mais une seule
> feuille
> paramétrée en 1024*768.La msgbox s'affiche au milieu du 2048 alors que
> je
> veux qu'elle s'affiche au milieu du 1024.

Ton histoire donne l'impression que le driver de ta carte video est mal
foutu et indique je ne sais comment a Windows qu'il n'y a qu'un écran de
2048*768 au lieu de 2 écrans de 1024*768. Du coup Windows affiche la
MessageBox au milieu de ce qu'il croit etre un unique écran. Parce
qu'ici
j'ai 2 écrans, que Winodows voit bien comme 2 érans, et les MessageBox
s'affiche bien au milieu de l'écran 1 ou 2 mais jamais a cheval entre
les
deux.









1 2