Charger une image dans un controle image vba

mafiases Messages postés 4 Date d'inscription jeudi 20 mai 2010 Statut Membre Dernière intervention 22 mai 2010 - 20 mai 2010 à 17:46
mafiases Messages postés 4 Date d'inscription jeudi 20 mai 2010 Statut Membre Dernière intervention 22 mai 2010 - 22 mai 2010 à 00:55
bonjour

attention le message que je poste concerne powerpoint, mais j'ai aussi besoin pour le VB en générale. donc j'accepte les réponse en vb6

bonjour j'ai créer un controle image dans powerpoint qui s'appelle MoiseOui, il contient une image qui s'appelle cocher, j'aimerai afficher l'image décocher dans cette controle lorsque je clique dessus, les image sont sur mon disque D j'ai entré le code suivant :

Private Sub MoiseOui_Click()
MoiseOui.Picture = LoadPicture("d:\décocher.gif")
End Sub

l'image est remplacé dans le controle, mais n'est pas afficher dans le diapo lorsque je clique. Je vois l'image une fois que j'arrete la présentation.

j'aimerai connaitre aussi le code qui permet de verifier le contenu d'un controle avant d'entrer une condition j'ai essayé ça mais ça ne marche pas.

if MoiseOui.Picture LoadPicture("d:\décocher.gif") then if MoiseNom.Picture LoadPicture("d:\cocher.gif")

merci pour les réponse,

5 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
20 mai 2010 à 18:40
Salut
Après le chargement de ton image, tu peux tenter :
- DoEvents pour laisser le système respirer, au cas où tu enchaines les commandes
- un Redraw, Repaint ou Refresh de l'objet ou de son support

Pour ta deuxième question :
Une fois l'image chargée dans le composant, il ne garde pas trace du nom du fichier qui a servi (les images peuvent aussi provenir d'autres composants comme les ImageList).
Tu dois pouvoir (*) te servir de la propriété .Tag de ton composant pour mémoriser le nom du dernier fichier image que tu auras chargé, et ainsi tester le .Tag.
(*) si elle existe en VBA PowerPoint

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
mafiases Messages postés 4 Date d'inscription jeudi 20 mai 2010 Statut Membre Dernière intervention 22 mai 2010
20 mai 2010 à 18:47
MERCI BEAUCOUP JE VAIS ESSAYER
mafiases Messages postés 4 Date d'inscription jeudi 20 mai 2010 Statut Membre Dernière intervention 22 mai 2010
20 mai 2010 à 19:01
le .tag n'existe pas pour le controle et je ne sais pas comment utiliser redraw, refresh et repain, peux-tu me donner un exemple, autre question, peut-on créer des boutons d'options et cases à cocher plus gros, je n'arrive pas à le faire depuis les propriétés.

merci pour réponse
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
20 mai 2010 à 20:41
En effet, il n'y a pas de .Tag dans les objets collés sur le PowerPoint lui même (mais existe pour les composants collés sur les UserForm)
Alors, il va falloir créer une variable chaine qui mémorisera le nom de l'image chargée.
J'ai vu qu'un Slide pouvait avoir des .Tags --> étiquettes internes. Même si ce tag n'est pas rattaché directement à ton image, tu pourrais en créer un qui s'appellerait "monImage_Tag" par exemple = facile à retrouver.

Je te confirme, les ChechBox ont des cases à cocher non "sizable"
Je te confirme aussi qu'il n'y a pas de méthode de rafraichissement des objet Slide
Et le DoEvents n'a rien donné ?
A quel moment charges-tu cette image ?
Pendant un show ou en config ?

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mafiases Messages postés 4 Date d'inscription jeudi 20 mai 2010 Statut Membre Dernière intervention 22 mai 2010
22 mai 2010 à 00:55
merci pour ta réponse, j'ai eu une aide pour afficher la case il faut entrer ceci :

ActivePresentation.SlideShowWindow.View.GotoSlide 1

en revange je suis un gros débutant en VB, et ça fait un moment que j'ai perdu mes connance en basic, les .tag je ne sais pas comment les utilisés.

peux-tu m'aider en me donnant l'exemple d'un script.
Rejoignez-nous