Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Contribuez
Contribuez Placez ici vos codes, sources, trucs et astuces que vous souhaitez partager avec les membres du club.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/01/2008, 01h36   #1
Membre émérite
 
Avatar de fred65200
 
Inscription : septembre 2007
Messages : 901
Détails du profil
Informations personnelles :
Âge : 45

Informations forums :
Inscription : septembre 2007
Messages : 901
Points : 994
Points : 994
Par défaut image stockée en binaire dans le classeur pour affichage dans le ruban

Bonjour à tous,

un petit classeur pour démo, trop de code.

Dans ce classeur, vous pouvez stocker des images (jpeg, gif, png, ico, etc.) sur une feuille en binaire et modifier l'image d'un bouton du ruban avec les données de cette feuille.

Utilisation de GDIplus

Lorsque vous changer l'item du dropDown, l'image du bouton change aussi.

Lorsque vous ajouter une image:

une boite de dialogue standard "Ouvrir" s'affiche

une fois le fichier choisi, un UserForm est créé.

dans ce userform, vous pouvez afficher l'image en cochant la case correspondante. Si l'image d'origine est plus grande que celle affichée, une petite loupe s'affiche, cette loupe n'est pas dans le classeur, elle est crée à partir d'un tableau (cf le tableau tabZoom). En cliquant sur l'image, elle est affichée à sa taille d'origine ou adaptée aux dimensions de l'écran.

Une fois l'image chargée, vous devrez peut être fermer et rouvrir le classeur. Je n'ai pas trouvé de solution pour éviter cet inconvénient. Le ruban ce décharge et je ne vois pas comment le recharger (LoadCustomUI ne fonctionne pas sur Excel).

Une fois rouvert, vous pouvez afficher votre image sur le bouton.

Vous pouvez aussi adapter un texte pour le screentip et le supertip.
Ces infos sont stockées sur la feuille donnée.

Le classeur est "uploadé" au format 2007 pour ne pas perdre le ruban.



Le code xml
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
 
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad ="GetmonRubanDyna">
    <ribbon startFromScratch ="false" >
        <tabs >
            <tab id="fred65200" label ="fred65200">
                <group id ="gr01" label ="Image" keytip="BB">
 
                    <button id="btnDyna"
                        size ="large"
                        showLabel="true"
                        showImage="true"
                        tag="AfficherInfos"
                        getImage="GetImages"
                        getLabel="GetLabels"
                        getScreentip="GetScreentips"
                        getSupertip="GetSupertips"
                    ></button>
 
                    <dropDown id ="ddDyna"
                        visible ="true"
                        enabled="true"
                        showLabel ="true"
                        label ="Choisir"
                        screentip ="Choisir une image"
                        supertip ="Utilisez ce dropDown pour choisir l'image à afficher sur le bouton de droite.  En bas deux boutons pour ajouter ou retirer des images.  Ne placez pas d'image trop lourde. Pour le "fun", j'ai testé avec une image de 945 Ko. Ça fonctionne mais j'ai eu le temps de me faire un café... :-)"
                        keytip="I"
                        showItemLabel ="true"
                        showItemImage ="true"
 
                        getSelectedItemIndex="DropDownSelectedItemIndex"
                        getItemCount="NbItemDropDown"
                        getItemLabel="DropDownLabel"
                        getItemImage="DropDownImage"
                        getItemScreentip="DropDownScreentip"
                        getItemSupertip="DropDownSupertip"
 
                        onAction="DropDownChange"
                    >
                        <button id ="btn01"
                            label = "Ajouter"
                            imageMso ="Redo"
                            keytip = "CC"
                            tag="AjouterImage"
                            onAction ="ButtonOnAction"
                        ></button>
 
                        <button id ="btn02"
                            label = "Supprimer"
                            imageMso="Undo"
                            keytip = "S"
                            tag="SupprimerImage"
                            onAction ="ButtonOnAction"
                        ></button>
 
                    </dropDown>
 
                    <separator id="sep3" />
 
                    <toggleButton id="TglBtnInfo"
                        label="Info"
                        keytip="!"
                        showLabel="false"
                        getImage="getImages"
                        onAction="ToogleButtonOnAction"
                        screentip="À propos..."
                    ></toggleButton>
 
                    <button id="BtnInfo"
                        keytip = "?"
                        label="fred65200 pour developpez.com"
                        supertip="Envoyer un email à fred65200"
                        imageMso="ObjectsSelect"
                        size="large"
                        getVisible="GetVisible"
                        tag ="Info"
                        onAction="ButtonOnAction"
                    ></button>
<!-- pour afficher une info supplémentaire -->
                    <dialogBoxLauncher>
 
                        <button id="grpPrincipal_dlB"
                            screentip="Qu'est ce qu'on s'amuse avec la version 2007."
                            supertip="Ligne 1 Ligne 2 Ligne 3 on utilise   pour sauter une ligne (le Chr(13) du xml)."
                        ></button>
 
                    </dialogBoxLauncher>
                </group>
            </tab>
        </tabs>
    </ribbon>
</customUI>
Cordialement


Fichiers attachés
Type de fichier : zip Image binaire du classeur vers le ruban 23-01-08 01-34-52.zip (104,1 Ko, 85 affichages)
__________________
fred65200
Pensez à cliquer sur
fred65200 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2008, 19h51   #2
Rédacteur
 
Homme michel Tanguy
Inscription : août 2005
Messages : 3 317
Détails du profil
Informations personnelles :
Nom : Homme michel Tanguy
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Secteur : Industrie

Informations forums :
Inscription : août 2005
Messages : 3 317
Points : 10 706
Points : 10 706
Bravo Fred pour cette très belle démo
SilkyRoad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2008, 19h58   #3
Membre émérite
 
Avatar de fred65200
 
Inscription : septembre 2007
Messages : 901
Détails du profil
Informations personnelles :
Âge : 45

Informations forums :
Inscription : septembre 2007
Messages : 901
Points : 994
Points : 994
Merci
__________________
fred65200
Pensez à cliquer sur
fred65200 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h11.


 
 
 
 
Partenaires

Hébergement Web