Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    [VB6]Editor di Menu ed immagini ...

    Ciao a tutti,
    qualcuno sa' come abbinare una ImageList all 'Editor di Menu'
    in modo da far apparire delle piccole icone a fianco delle voci ?

    In altri linguaggi (Delphi) si abbina il menu alla lista di immagini .. ma con VB non riesco a capire come fare .

    Grazie

    Filippo

  2. #2
    Utente di HTML.it L'avatar di cassano
    Registrato dal
    Aug 2004
    Messaggi
    3,002
    credo che col vb6 non si passa fare a meno di non usare artefizi vari !!!!

  3. #3
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755
    guarda su questo sito
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  4. #4
    Originariamente inviato da cassano
    credo che col vb6 non si passa fare a meno di non usare artefizi vari !!!!
    Artefizi vari ?????

    C'e da diventare matto !!!

    Grazie comunque

  5. #5
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    Ciao filippo_260367,
    in altri termini vorresti inserire le icone nelle voci del menù.
    Guarda questo sito troverai un ocx e le spiegazioni per il suo utilizzo. L'ho provato, funziona egregiamente, ha una grafica più che accettabile ed è di facile utilizzo.
    LM

  6. #6
    Originariamente inviato da LMondi
    Ciao filippo_260367,
    in altri termini vorresti inserire le icone nelle voci del menù.
    Guarda questo sito troverai un ocx e le spiegazioni per il suo utilizzo. L'ho provato, funziona egregiamente, ha una grafica più che accettabile ed è di facile utilizzo.
    Grazie Mille !!!!

    L'ho provato ... un OCX veramente semplice e carino.

    Ciao e alla prossima ...

  7. #7
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,466
    Originariamente inviato da filippo_260367
    In altri linguaggi (Delphi) si abbina il menu alla lista di immagini .. ma con VB non riesco a capire come fare.
    Purtroppo è necessario ricorrere a componenti di terze parti, in quanto questa funzionalità non è supportata da VB6, analogamente a quella delle azioni che consente di "disaccoppiare" il comando da eseguire vero e proprio dai controlli visuali (pulsanti, menu, ecc.) che lo invocano.

    Mi sa che hai fatto un "downgrade"...

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

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

  8. #8
    Per far apparire le icone a fianco della relativa voce si potrebbero utilizzare le Api, in questo modo:
    Presupposti dell'esempio:
    -Aver creato con l'apposito editor 1 menu (MENU1) con due sottomenu (MENU2 e MENU3)
    -Aver inserito una picturebox Picture1) con proprietà Visible=False sul form, contenente l'immagine da visualizzare a fianco della voce di menu.

    Per fare apparire l'icona a fianco di MENU3:
    Nel modulo
    codice:
    Declare Function GetMenu Lib "user32" _
    (ByVal hwnd As Long) As Long
    
    Declare Function GetSubMenu Lib "user32" _
    (ByVal hMenu As Long, ByVal nPos As Long) As Long
    
    Declare Function GetMenuItemID Lib "user32" _
    (ByVal hMenu As Long, ByVal nPos As Long) As Long
    
    Declare Function SetMenuItemBitmaps Lib "user32" _
    (ByVal hMenu As Long, ByVal nPosition As Long, _
    ByVal wFlags As Long, ByVal hBitmapUnchecked As Long, _
    ByVal hBitmapChecked As Long) As Long
    
    Declare Function GetMenuItemCount Lib "user32" _
    (ByVal hMenu As Long) As Long
    
    Declare Function GetMenuItemInfo Lib "user32" _
    Alias "GetMenuItemInfoA" (ByVal hMenu As Long, _
    ByVal un As Long, ByVal b As Boolean, _
    lpMenuItemInfo As MENUITEMINFO) As Boolean
    
    
    Public Const MF_BITMAP = &H4&
    
    Type MENUITEMINFO
        cbSize As Long
        fMask As Long
        fType As Long
        fState As Long
        wID As Long
        hSubMenu As Long
        hbmpChecked As Long
        hbmpUnchecked As Long
        dwItemData As Long
        dwTypeData As String
        cch As Long
    End Type '
    
    
    Public Const MIIM_ID = &H2
    Public Const MIIM_TYPE = &H10
    Public Const MFT_STRING = &H0&
    Nel form:
    codice:
    Option Explicit
    Private Sub Form_Load()
    IconeInMenu
    End Sub
    
    Sub IconeInMenu()
    Dim hMenu&, hSubMenu&, hID&
    hMenu& = GetMenu(Me.hwnd)
    hSubMenu& = GetSubMenu(hMenu&, 0)
    hID& = GetMenuItemID(hSubMenu&, 1)
    SetMenuItemBitmaps hMenu&, hID&, MF_BITMAP, Picture1.Picture, Picture1.Picture
    End Sub
    Ciauz

    Chico

  9. #9

    [VB] Icone nei menù.

    In molte delle mie applicazioni ho insetiro nei menù "Toolbar" le icone a fianco delle voci, utilizzando una ImageList, non so se gli altri sistemi di programmazione permettono questa funzione in maniera più rapida, ma con VB dopo aver capito la strada giusta non è tanto difficile.

  10. #10
    Utente di HTML.it L'avatar di LMondi
    Registrato dal
    Sep 2004
    Messaggi
    1,291
    La strada indicata da chico62 è valida ed è quella che ho praticato fino ad un pò di tempo fa; però ha l'inconveniente che inserisce le icone nello spazio previsto per il segno di "spunta" accanto alla voce del menù. Dato che il predetto spazio è esiguo l'icona inseribile è di formato 13x13 pixel; pertanto se l'ico è di formato superiore (cosa che accade sempre inquanto minimo è di 16x16 pixel) occorre trasformarla in bmp e ridurla, altrimenti verrà ritagliata.
    Si deve inoltre considerare che dato il formato minimo, alcune sfumature, contorni delle immagini ed altro ... sono persi o modificati.
    LM

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.