Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di luisa227
    Registrato dal
    Mar 2002
    Messaggi
    2,305

    VB - ricavare l'icona di un programma

    Devo estrarre l'icona di un programma e visualizzarla in un nodo di un treeview.
    Riesco ad estrarre l'icona con le API visualizzandola direttamente sul form o in una picture, ma proprio non riesco a capire come inserirla nella imageList (associata al treeview). Qualcuno mi può aiutare dandomi un esempio di codice? grazie

    codice:
    'Draw the icon on the form
           mIcon = ExtractAssociatedIcon(App.hInstance, "C:\Programmi\API-Guide\API-Guide.exe", 2)
        'Draw the icon on the form
        DrawIconEx Me.hdc, 0, 0, mIcon, 0, 0, 0, 0, DI_NORMAL
    Le mie richieste qui sul forum sono al 99,9% considerate assurde e senza senso, ma per me un senso lo hanno e gradirei una risposta più seria possibile. Grazie

  2. #2
    Utente di HTML.it L'avatar di luisa227
    Registrato dal
    Mar 2002
    Messaggi
    2,305
    nessuno. Pensavo fosse una cosa semplice...
    Le mie richieste qui sul forum sono al 99,9% considerate assurde e senza senso, ma per me un senso lo hanno e gradirei una risposta più seria possibile. Grazie

  3. #3
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Prova a leggere anche questa discussione: forse contiene elementi che possono portare alla risoluzione del problema.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  4. #4
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Ciao luisa227,
    di seguito posto un esempio di come inserire un'icona nel controllo ImageList:
    codice:
    'In un oggetto ListImage, è possibile caricare sia immagini bitmap,
    'sia icone. Per caricare un'immagine bitmap o un'icona,
    'è necessario utilizzare la funzione LoadPicture nel modo seguente:
    'Set imgX = ImageList1.ListImages.Add(, , LoadPicture("nome file"))
    Private Sub Command1_Click()
        Dim imgX As ListImage
        Dim I As Integer
       
        Set imgX = ImageList1.ListImages.Add(, , _
        LoadPicture("D:\Programmi\ICONEVB\A-icons\acrobat.ico", vbLPLarge, vbLPColor))
        imgX.Key = "Acrobat"   'assegna la proprietà Key
    
    End Sub
    LM

  5. #5
    Utente di HTML.it L'avatar di luisa227
    Registrato dal
    Mar 2002
    Messaggi
    2,305
    Ci ho impiegato un po' per capire... alla fine ce l'ho fatta! Grazie a tutti! Posto il codice(a grandi linee) in caso serva a qualcun'altro!
    Innanzitutto uso l'api ExtractAssociatedIcon per ricavare l'icona del programma che mi interessa poi la disegno nella picture attraverso la seguente api
    codice:
     DrawIconEx Picture1.hDC, 0, 0, mIcon, 0, 0, 0, 0, DI_NORMAL
    poi associo l'imagelist alla picture (è questo che non mi riusciva!)
    codice:
    Set Img = ImageList2.ListImages.Add(2, , Picture1.Image)
    infine associo il tree alla imagelist e attribuisco al nodo l'indice dell'immagine che mi interessa
    codice:
    Set TreeView1.ImageList = ImageList2
    nodX.Image = 1

    grazie a tutti... ah... ce un modo per far sì che l'icona inserità sia di una dimensione giusta? se riduco la picture si "sfasa" l'icona...
    Le mie richieste qui sul forum sono al 99,9% considerate assurde e senza senso, ma per me un senso lo hanno e gradirei una risposta più seria possibile. Grazie

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.