Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Wed 14 September 2011 15:59

tnicolas
Participant actif
Date d'inscription: 18 Apr 2007
Messages: 64

[ArcGis 9.1] changer l'image d'un outils

Bonjour,

J'ai créé une barre d'outils personnalisée et y ai rajouté des UIControls. J'aimerais pouvoir changer l'image de l'un d'entre eux avec un code VBA.
En faisant des recherches j'ai trouvé ça : http://resources.esri.com/help/9.3/ArcG … FaceID.htm

Code:

Sub ChangeIcon()
   Dim pBar As ICommandBar
   Dim pItem As ICommandItem
   Set pBar = CommandBars.Find(ArcID.Standard_Toolbar)
   Set pItem = pBar.Find(ArcID.Help_ContextHelp)
   pItem.FaceID = UserForm1.Image1.Picture
End Sub

J'ai créé un formulaire bidon avec 2 images donc les "Picture" sont des bitmap.
J'ai récupéré (enfin je pense) l'UID de mon outils avec un affichage de "me.id" au click de cet outils et  j'ai donc changer le code précédent en ceci :

Code:

Dim pUID As New UID
    Dim pItem As ICommandItem
    pUID.Value = "{FD5DA16D-B9D0-411A-8140-8E4C778A4697}"
    Set pItem = Application.document.CommandBars.Find(pUID)
    pItem.FaceID = f_image.Image1.Picture

quand je lance la macro pour changer l'image il me donne une "erreur 91 variable objet ou du bloc with non définie" en surlignant la dernière ligne.

Les variables sont déclarées, le formulaire f_image existe, le control Image1 aussi et la propriété Picture est remplie (image bitmap). D'où vient le problème ?

Cordialement,

Nicolas

Hors ligne

 

#2 Thu 15 September 2011 10:30

tnicolas
Participant actif
Date d'inscription: 18 Apr 2007
Messages: 64

Re: [ArcGis 9.1] changer l'image d'un outils

Finalement en faisant le "me.id" j'ai du récupérer l'id du document et celui de l'outils ... reste à savoir comment on récupère l'id d'un outils ?

Hors ligne

 

#3 Thu 15 September 2011 10:47

tnicolas
Participant actif
Date d'inscription: 18 Apr 2007
Messages: 64

Re: [ArcGis 9.1] changer l'image d'un outils

Bon ok, pourquoi faire simple quand on peut faire compliqué.

Code:

Dim pItem As ICommandItem
    Set pItem = Application.document.CommandBars.Find("nomduprojet.nomdubouton")
    pItem.FaceID = f_image.Image2.Picture

Hors ligne

 

Pied de page des forums

Powered by FluxBB