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