Condividi tramite


Utilizzo di elenchi di immagini in un controllo Toolbar

Per impostazione predefinita, le immagini usate dai pulsanti in un controllo barra degli strumenti vengono archiviate come una singola bitmap. Tuttavia, è anche possibile archiviare le immagini dei pulsanti in un set di elenchi di immagini. L'oggetto controllo barra degli strumenti può usare fino a tre elenchi di immagini separati:

  • Elenco di immagini abilitate Contiene immagini per i pulsanti della barra degli strumenti attualmente abilitati.

  • Elenco di immagini disabilitate Contiene immagini per i pulsanti della barra degli strumenti attualmente disabilitati.

  • Elenco di immagini evidenziato Contiene immagini per i pulsanti della barra degli strumenti attualmente evidenziati. Questo elenco di immagini viene utilizzato solo quando la barra degli strumenti utilizza lo stile TBSTYLE_FLAT.

Questi elenchi di immagini vengono utilizzati dal controllo barra degli strumenti quando li si associa all'oggetto CToolBarCtrl . Questa associazione viene eseguita effettuando chiamate a CToolBarCtrl::SetImageList, SetDisabledImageList e SetHotImageList.

Per impostazione predefinita, MFC usa la CToolBar classe per implementare le barre degli strumenti dell'applicazione MFC. Tuttavia, la GetToolBarCtrl funzione membro può essere usata per recuperare l'oggetto incorporato CToolBarCtrl . È quindi possibile effettuare chiamate alle CToolBarCtrl funzioni membro usando l'oggetto restituito.

L'esempio seguente illustra questa tecnica assegnando un elenco di immagini abilitato (m_ToolBarImages) e disabilitato (m_ToolBarDisabledImages) a un CToolBarCtrl oggetto (m_ToolBarCtrl).

CWinApp* pApp = AfxGetApp();

m_ToolBarImages.Create(16, 16, ILC_COLOR, 4, 4);
m_ToolBarImages.Add(pApp->LoadIcon(IDI_BLK));
m_ToolBarImages.Add(pApp->LoadIcon(IDI_RED));
m_ToolBarImages.Add(pApp->LoadIcon(IDI_YELL));
m_ToolBarImages.Add(pApp->LoadIcon(IDI_WHI));

m_ToolBarDisabledImages.Create(16, 16, ILC_COLOR, 4, 4);
m_ToolBarDisabledImages.Add(pApp->LoadIcon(IDI_DIS_BLK));
m_ToolBarDisabledImages.Add(pApp->LoadIcon(IDI_DIS_RED));
m_ToolBarDisabledImages.Add(pApp->LoadIcon(IDI_DIS_YELL));
m_ToolBarDisabledImages.Add(pApp->LoadIcon(IDI_DIS_WHI));

m_ToolBarCtrl.SetImageList(&m_ToolBarImages);
m_ToolBarCtrl.SetDisabledImageList(&m_ToolBarDisabledImages);

Nota

Gli elenchi di immagini utilizzati dall'oggetto barra degli strumenti devono essere oggetti permanenti. Per questo motivo, sono in genere membri dati di una classe MFC; in questo esempio, la classe della finestra cornice principale.

Quando gli elenchi di immagini sono associati all'oggetto CToolBarCtrl , il framework visualizza automaticamente l'immagine del pulsante corretta.

Vedi anche

Uso di CToolBarCtrl
Controlli