Zone invisible, de click

cs_arkandias Messages postés 16 Date d'inscription dimanche 11 juillet 2004 Statut Membre Dernière intervention 27 juillet 2005 - 8 févr. 2005 à 17:32
cs_arkandias Messages postés 16 Date d'inscription dimanche 11 juillet 2004 Statut Membre Dernière intervention 27 juillet 2005 - 8 févr. 2005 à 18:20
Bonjour,

Je voudrais vous poser une question : je veux faire un programme qui travaille sur une image, et je veux que quand l'utilisateur clique sur une zone particulière de l'image, une fonction se déclenche.

Doit-on surveiller pour cela la position de la souris, où existe-t-il une fonction spécifique aux images, ou encore un composant, qui définit une zone invisible ?

Merci d'avance,

arkandias.

4 réponses

zippro4012 Messages postés 216 Date d'inscription mardi 15 juin 2004 Statut Membre Dernière intervention 26 février 2006 1
8 févr. 2005 à 17:41
2 solutions :
- soit tu utilise l'évènement click de la picturebox, de l'imagebox, ou de la form, puis en utilisant une "detection de collision" entre la souris et le cadre réactif de l'image, de cette manière :
If SourisX > CadreLeft and SourisX < CadreLeft + CadreWidth and SourisY > CadreTop and SourisY < CadreTop + CadreHeight then
'Tu met ton code qui gère le click sur la zone
End if

- soit tu utilise un contrôle invisible tel que l'imagebox en VB6 (sans charger d'image dedans), en utilisant son évènement click


otayara Messages postés 16 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 1 décembre 2006
8 févr. 2005 à 17:46
lorsque tu crée une image. tu as les fonctions suivantes :

quand tu déplace le curseur sur l'image :
Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)


End Sub

quand tu clique sur l'image :
Private Sub Image1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)


End Sub


Private Sub Image1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)


End Sub

cela dit, si tu as une image que tu veux déomposer de sorte à ce que chaque zone fait un traitement , tu peux créer des labels tranparents, ces labels ont aussi les méthodes citées plus haut.
j'éspère que ça t'aideras.
zippro4012 Messages postés 216 Date d'inscription mardi 15 juin 2004 Statut Membre Dernière intervention 26 février 2006 1
8 févr. 2005 à 18:01
heu... tu t'est gourré otayara : t'a inversé MouseDown et MouseMove !!!


cs_arkandias Messages postés 16 Date d'inscription dimanche 11 juillet 2004 Statut Membre Dernière intervention 27 juillet 2005
8 févr. 2005 à 18:20
Merci beaucoup, je vais utiliser l'image invisible.
Rejoignez-nous