Image icone

Résolu
timotep Messages postés 34 Date d'inscription mardi 3 janvier 2006 Statut Membre Dernière intervention 16 janvier 2008 - 16 avril 2007 à 11:10
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 - 17 avril 2007 à 15:50
Bonjour, Question toute bête :

Lorsqu'on veut mettre une image sur un bouton d'un formulaire, en vb.net. La manip est simple pour ajouter de nouvelles images; MAIS y a-t-il une bibliothèque qui fournit des images propres à microsoft, sur le même modèle qu'acces, qui possède une grosse bibliothèque d'images que l'on peut utiliser, ce qui nous évite d'en importer de nouvelles.

5 réponses

jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
17 avril 2007 à 15:40
Il est probable que oui (que VB.net distribue également un répertoire d' icônes)... comme VB... répertoire dont chacun a l'habitude de se débarrasser généralement aussitôt pour ne pas encombrer son disque avec de l'inutile ...
Le fait que tu utilises VB.Net ne te prive par ailleurs ni d'aller chercher des icônes dans Word, ni ailleurs..., ni de te constituer ton propre répertoire d'icônes et de le charger des seules icônes qui t'intéressent (il y a en général très peu... et l'intérêt essentiel d'un langage de programmation n'est certes pas d'utiliser des icônes à tous les coins de rue...). Un tel répertoire n'a rien à voir directement avec VB ou avec VB.Net.
Tu peux enfin, si tu veux personnaliser tes applis, faire tes propres icônes et les charger dans ce répertoire ...
Bref : rien de celà ne relève du développement ....
3
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
17 avril 2007 à 15:50
Sans compter toutes les librairies de Windows...
Tiens ! voilà les icônes contenue dans Shell32.dll

Une Form et une pictureBox Picture1

code VB6 (à modifier un tout petit peu pour VB.Net) :

Const DI_MASK = &H1
Const DI_IMAGE = &H2
Const DI_NORMAL = DI_MASK Or DI_IMAGE
Private Declare Function ExtractIconEx Lib "shell32.dll" Alias "ExtractIconExA" (ByVal lpszFile As String, ByVal nIconIndex As Long, phiconLarge As Long, phiconSmall As Long, ByVal nIcons As Long) As Long
Private Declare Function DrawIcon Lib "user32" (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long, ByVal hIcon As Long) As Long


Private Declare Function ExtractAssociatedIcon Lib "shell32.dll" Alias "ExtractAssociatedIconA" (ByVal hInst As Long, ByVal lpIconPath As String, lpiIcon As Long) As Long
Private Declare Function DrawIconEx Lib "user32" (ByVal hdc As Long, ByVal xLeft As Long, ByVal yTop As Long, ByVal hIcon As Long, ByVal cxWidth As Long, ByVal cyWidth As Long, ByVal istepIfAniCur As Long, ByVal hbrFlickerFreeDraw As Long, ByVal diFlags As Long) As Long
Private Declare Function DestroyIcon Lib "user32" (ByVal hIcon As Long) As Long


Private Sub Form_Activate()
    Me.AutoRedraw = True
    Picture1.Move 0, Screen.Height / Screen.TwipsPerPixelX, Screen.Width / 2, Screen.Height / 4
    Picture1.AutoRedraw = True
    Me.Move 0, 0, Screen.Width, Screen.Height
    Dim mIcon As Long, nb As Integer, saut As Integer, retour As Integer
    'Extraction des icônes du fichier shell32.dll et dessin de ces icônes dans picture1
    For Cnt = 0 To 200
        ExtractIconEx "shell32.dll", Cnt, mIcon, ByVal 0&, 1
        DrawIcon Picture1.hdc, 32 * nb, saut * 32, mIcon
        DestroyIcon mIcon
        nb = nb + 1
     If nb = 19 Then
            saut = saut + 1
            nb = 0
            retour = 0
        End If
    Next
    CurrentX = 0
    CurrentY = Picture1.Top / 3
    Me.FontSize = 20
    Me.FontBold = True
    Me.Print "Icônes extraites avec ExtractIconeEx"
 
 
    'on extrait l'icône associée à un fichier
    mIcon = ExtractAssociatedIcon(App.hInstance, "C:\recycled", 2)
    'on va maintenant afficher cette icône sur la Form
    DrawIconEx Me.hdc, Screen.Width / (4 * Screen.TwipsPerPixelX), Screen.Height / (2.5 * Screen.TwipsPerPixelY), mIcon, 0, 0, 0, 0, DI_NORMAL
    DestroyIcon mIcon 'on libère la mémoire de cette icône
    CurrentX = 500
    CurrentY = Screen.Height / 2.8
    Me.Print "Icône extraite avec ExtractAssociatedIcon"
End Sub
3
OneHacker Messages postés 1447 Date d'inscription jeudi 2 novembre 2000 Statut Membre Dernière intervention 23 septembre 2007 2
16 avril 2007 à 12:09
De quelle bibliothèque parles-tu ?

Redman
0
timotep Messages postés 34 Date d'inscription mardi 3 janvier 2006 Statut Membre Dernière intervention 16 janvier 2008
17 avril 2007 à 15:25
Euh, je vais la refaire, je n'ai pas dû être clair :

Dans access, on peut mettre des images sur les boutons, en cherchant dans une collection d'images mise à notre disposition par microsoft, inclue dans access. Existe-t-il un truc du genre en DotNet, pour éviter de devoir chercher des images d'icone sur internet ?

Voilà, j'espère que j'ai été plus clair :-) Redman
0

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

Posez votre question
timotep Messages postés 34 Date d'inscription mardi 3 janvier 2006 Statut Membre Dernière intervention 16 janvier 2008
17 avril 2007 à 15:48
Merci, c'est bien ce que je pensais, je vais effectivement utiliser mes propres icônes, ce qui sera beaucoup plus simple, et léger.
0
Rejoignez-nous