Fullscreen - keydown event pour quitter [Résolu]

Signaler
Messages postés
29
Date d'inscription
jeudi 7 décembre 2000
Statut
Membre
Dernière intervention
30 octobre 2012
-
Messages postés
29
Date d'inscription
jeudi 7 décembre 2000
Statut
Membre
Dernière intervention
30 octobre 2012
-
Bonjour à tous,

J'ai une question à vous posez :

L'appli se déroule en VS2005.
J'utilise mappoint pour utiliser la cartographie.


Je souhaite faire un fullscreen de ma carte :
-> celle-ci est dans un popupcontainercontrole que je redimension pour l'avoir en plein écran.
-> j'utilise un popupcontainercontrole qui contient un panel dans lequel est ma carte.(Je ne vois plus que ma carte donc je n'ai plus accès à la popupcontainercontrole).


Mon problème :
Je veux quitter le fullscreen, j'utilise la méthode keydown. (la fonction est sur le panel)
Mais quand je fais echappe rien ne bouge.

J'ai donc fait : panel.focus();
là ça quitte mais le problème c'est que si je fais des actions sur ma carte je perd le focus.
Mais il n'y a pas possibilité de resélectionner le panel.

Ma question :
Pensez vous que je n'ai plus accès à mon panel car la carte est considérée, par mon application, sur le panel ? (alors qu'il est dedans)

Le fait de sélectionner la carte devrait sélectionner le panel vu qu'elle est dedans , non?

Merci de vos futures réponses.
Bonne fin de journée.

Cordialement,
Guilty90

2 réponses

Messages postés
326
Date d'inscription
vendredi 23 décembre 2005
Statut
Membre
Dernière intervention
8 février 2011
14
Le fait de sélectionner la carte devrait sélectionner le panel vu qu'elle est dedans , non?

Ben justement non. Il n'y a qu'un seul controle de sélectionné à la fois.
Je ne connais pas vraiment les cartes MapPoint, mais si ta carte possède un event KeyDown, je pense qu'il faut l'utiliser.
Autrement tu peux toujours faire un Mouse Hook pour ton application http://blogs.msdn.com/toub/archive/2006/05/03/589468.aspx
il suffit de remplacer private const int WH_MOUSE_LL 14; par private const int WH_MOUSE 7;
Messages postés
29
Date d'inscription
jeudi 7 décembre 2000
Statut
Membre
Dernière intervention
30 octobre 2012

Bonjour,

Je vous remercie GG29 de votre intèret pour ma question.

Après avoir fait une autre partie du logiciel, je suis revenu sur cela et ... je n'ai pas eu envie de plus me compliquer la vie à chercher ce focus.

Donc je me suis contenté d'un hook qui m'a permis en même temps d'apprendre comment il marchait :)

Par contre, je n'ai pas utilisé le mouse hook mais un hook normale (keypress).

c'est à dire qu'on appuye sur n'importe quelle touche (ici escape).

un timer (timer_clavier) +

if (GetAsyncKeyState(27)!=0)
{
timerfullscreen.Stop();
closepopupfullscreen();
timer_clavier.Enabled = false;
}

Merci de votre aide.

Cordialement,
Guilty90