Clic sur objet non cliquable

Signaler
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
-
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
-
Bonjour à Tous,


Pour un programme météo j'utilise un contrôle image qui me sert de container pour 24 labels et 12 ocx (gif89)  qui permettent d'afficher des gifs animés mais malheureusement ce contrôle ne possède pas les évènements Click, MouseDown, etc...


 MER 02 JAN
  ---------
  |       |
  |  OCX  |  symbole météo animé
  |       |
  ---------
     4°


Au-dessus et en dessous de chaque gif il y a un label sur lesquel je peux évidement cliquer, ce qui permet de récupérer les données complètes du jour.
J'aurais voulu quand même pouvoir cliquer sur le gif, ce qui est plus pratique que de pointer sur un des deux labels.


Auriez-vous une astuce pour détecter malgré tout un clic sur le composant ? sachant évidement que l'image container n'est bien sûr cliquable qu'en dehors de la zone des labels et du composant.


Je vous remercie par avance et vous souhaite une bonne journée.


Bien amicalement de Cheyenne

12 réponses

Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
en jouant avec:
http://www.vbfrance.com/codes/OCX-GIF-ANIME_42325.aspx

tu pourras te passer de GIF89
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
Merci Renfield pour cette réponse rapide.
Je vais voir ça de suite et valide ton conseil si cela me convient.

Bonne prog,

Cheyenne
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
Reinfield,

Merci pour ce contrôle.

J'ai mis la propriété IsPlaying à True mais l'animation ne se fait pas en continu.
A chaque changement de gif l'animation se fait très rapidement et sans moyen d'en contrôler la vitesse et le gif reste affiché avec sa dernière frame.
Il y a-t'il quelque chose qui m'aurait échappé ?

@+ Cheyenne
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
Bonjour,

En fait ce que je cherche à obtenir serait plutôt de connaitre la position de la souris lors d'un clic sur un objet non cliquable comme ce composant Gif89. A partir de là je peux calculer sur quel objet le clic a été fait.

Merci d'avance pour vos éventuelles solutions.

Cheyenne
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
étrange...

je viens de prendre mon zip, je l'extraies, ouvres le fichier .vbg
je met la propriété IsPlaying du controle GIF de la Form1 à True

je lance, les animations tournent en boucle.

et ça ne fait pas de même si tu ouvre tes gifs dans mon contrôle ?
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
Bonjour Renfield,

Merci d'avoir contrôlé sur ton PC et c'est exact cela ne fait pas de même en ouvrant soit tes gifs de démo soit mes gifs dans ton contrôle : animation puis arrêt sur la dernière frame.
VB6 est bien lancé depuis Groupe1.vbg.

Notes que je suis sous Win98SE (ceci expliquant peut-être cela ) et que la dll gdiplus est bien installée (fonctionne avec d'autres programmes).

Si tu veux bien jeter un oeil sur mon précédent post (juste avant ta dernière réponse) concernant la position de la souris sur un objet non cliquable je t'en serai reconnaissant.

Bonne journée à toi,

Bien amicalement de Cheyenne
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
a voir si le controle GIF93 fournit un hWnd ou non.
sans cela, tu vas devoir le récupérer, et tu pourras alors le subclasser, pour récuperer le WM_LMOUSEDOWN

comme tu le vois, c'est loin d'être partie gagnée. C'est pour ça que je t'incites à utiliser l'autre contrôle.

Si tes gifs ne bouclent pas, c'est peut etre un soucis interne au fichiers image.
l'option continuous loop ne doit pas être activée.

et fort à parier que cela fonctionne avec Gif93, parce que ce dernier n'exploite pas cette info.
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
Hélas le Gif89 ne fournit pas de Hwnd et ne possède que 5 évènements DragDrop, DragOver, GotFocus, LostFocus et Validate.

- Si tes gifs ne bouclent pas, c'est peut etre un soucis interne au fichiers image
Je ne pense pas car toute ma collection de divers gifs animés ne fonctionne pas non plus dans ton contrôe alors que c'est ok avec d'autres applis. De plus tes gifs démo ne bouclent pas non plus et pourtant ils s'animent bien en boucle ailleurs.

Tant pis je vais continuer à cliquer sur les labels !

Merci quand même pour ton aide,

Cheyenne
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
mes gifs démos ne bouclent pas chez toi ?

ils tournent au poil chez moi...

(je suis en train de modifier mon controle gif, pour pouvoir spécifier son propre LoopCount)
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
Oui, effectivement, tes gifs démo ne bouclent pas et ce uniquement dans ton contrôle.

- (je suis en train de modifier mon controle gif, pour pouvoir spécifier son propre LoopCount)

Ah, en voilà une idée qu'elle est bonne !!! et avec 0 pour l'infini, je présume ?
Et, cerise sur le gâteau, une propriété pour la vitesse...

Bonne programmation,

Cheyenne
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
http://www.vbfrance.com/codes/OCX-GIF-ANIME_42325.aspx

mais normallement, ca devais tourner en boucle, déjà d'origine...
je me sert pas non plus du flag LoopCount ^^
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
Hello Renfield,

Je viens d'essayer la nouvelle version de ton contrôle... Hélas, 3 fois hélas, le résultat est le même !
Lecture x fois n'a, ici, aucun effet. Cela lit très rapidement toutes les frames et le gif s'arrête tout pareil à la dernière comme avec l'option lecture en boucle. Par contre le slider pour les frames les fait bien afficher une par une et le sens inverse fonctione mais le slider de vitesse n'agit pas du tout.
J'ai modifié le LargeChange de tous les sliders de 5 à 1, plus pratique.

Merci pour ces nouvelles fonctionalités bien q'elles ne me soient d'aucun secours malgré tout le mal que tu t'es donné. Mais cela ravira les utilisateurs pour qui ton contrôle fonctinne bien chez eux.

Bien amicalement de Cheyenne.