Simuler un click de souris

Signaler
Messages postés
43
Date d'inscription
mercredi 18 janvier 2006
Statut
Membre
Dernière intervention
5 août 2010
-
Messages postés
60
Date d'inscription
mardi 26 juillet 2005
Statut
Membre
Dernière intervention
16 avril 2006
-
voila pour le moment j'utilise certaine fonctionne qui reagissent a un clique de la souris;
est il possible de simuler ce click ?. une fonction qui me permette de me passer de ce click de la souris .

5 réponses

Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
98
Salut,

Certains contrôles, comme Button, ont une méthode PerformClick.

Mais il est plus simple de mettre le code "de travail" dans une méthode séparée afin de pouvoir s'en servir à volonté, que ce soit dans la méthode associée à un event Click ou ailleurs dans le code.

/*
coq
MVP Visual C#
*/
Messages postés
43
Date d'inscription
mercredi 18 janvier 2006
Statut
Membre
Dernière intervention
5 août 2010

j'ai placé le code autre part mais pour afficher quoi que ce soit je suis obliger de cliquer sur l'image et c'est ce que je veux eviter
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
98
Je n'ai pas dû être assez clair je pense.

Je parlais de transformer quelquechose de ce genre :

private void monImage_Click(object sender, EventArgs arg)
{
// code qui fait quelquechose
}

en

private void monImage_Click(object sender, EventArgs arg)
{
this.MethodeAvecLeCodeQuiFaitQuelquechose();
}

private void MethodeAvecLeCodeQuiFaitQuelquechose()
{
// code qui fait quelquechose
}

Ce qui te permettra de lancer le même traitement qu'au clic de n'importe où dans ton code en appelant directement MethodeAvecLeCodeQuiFaitQuelquechose.

/*
coq
MVP Visual C#
*/
Messages postés
43
Date d'inscription
mercredi 18 janvier 2006
Statut
Membre
Dernière intervention
5 août 2010

voila ce que j'ai pour le moment :


public
override
bool onMouseButtonUp (MouseButton button, PointDouble pPoint)
{
// MethodeAvecLeCodeQuiFaitQuelquechose();

}

private void MethodeAvecLeCodeQuiFaitQuelquechose()
{
// code qui fait quelquechose
}

et je fais appel à " MethodeAvecLeCodeQuiFaitQuelquechose()"
dans une autre classe . mais ca ne fonctionne que si je clique sur l'image .
Messages postés
60
Date d'inscription
mardi 26 juillet 2005
Statut
Membre
Dernière intervention
16 avril 2006

Tu dis appeler ce code dans une autre classe. Cependant, tous les méthodes classées private ne s'éxécutent seulement dans la classe en cours.

Donc, il faut remplacer:
private void MethodeAvecLeCodeQuiFaitQuelquechose()
{
// code qui fait quelquechose
}
par
public void MethodeAvecLeCodeQuiFaitQuelquechose()
{
// code qui fait quelquechose
}

;)