Categories: VC/C++

Gestione delle Risorse in Visual C/C++

Le risorse in una applicazione Windows sono estremamente importanti, perché consentono di inserire icone, immagini bitmap, menu, puntatori e barre degli strumenti in maniera molto semplice. In questa lezione vedremo come inserire una icona alla nostra applicazione sviluppata nella precedente lezione, un cursore personalizzato ed un menu per chiudere il programma o cambiare aspetto del grafico disegnato nella client area della finestra. Per inserire una nostra icona alla finestra principale dobbiamo inizialmente inserire un file di risorse al nostro progetto e poi inserire la nostra icona personalizzata nel progetto stesso. In particolare ricordiamo che ogni risorsa presenta un numero univoco che verrà inserito nel file resource.h e che pertanto va inserito con un include nel file della finestra. A questo punto basta solo caricare la risorsa in memoria ed inserirla nella classe della nostra finestra.

...
wc.hIcon = LoadIcon(hInst, MAKEINTRESOURCE(IDI_ICON_MAIN));
...

In questo caso ho chiamato la mia risorsa IDI_ICON_MAIN e da numero l’ho trasformata in stringa con MAKEINTRESOURCE, proprio perché la funzione LoadIcon vuole l’istanza dell’applicazione da cui prelevare la risorsa ed il nome della stessa in formato stringa. Allo stesso modo possiamo disegnare un cursore ed inserirlo come standard nella classe della finestra. Così come abbiamo visto per le icone ed i cursori possiamo anche inserire un menu. In questo caso verrà creata anche un’altra risorsa contenente le stringhe delle descrizioni dei comandi. Per intercettare i comandi del menu, dobbiamo gestire l’evento WM_COMMAND della finestra ed in particolare wParam, nel quale parametro risiede proprio il comando lanciato.

...
case WM_COMMAND:
switch (wParam)
{
      case ID_FILE_EXIT:
            PostQuitMessage(0);
            break;
}
break;
...

Ultima cosa da dire è che una volta validata l’area del disegno, per ridisegnare, occorre invalidarla ed aggiornare di nuovo la client area della finestra.

Ovviamente la finestra è molto semplice ed elementare, ma se vedete il codice sorgente potete imparare le nozioni basilari per creare le prime applicazioni con l’SDK di Windows.
Tutto il codice sorgente del progetto di esempio lo potete trovare nel forum dedicato alla programmazione in C/C++, mentre se volete pubblicizzare i vostri lavori potete inserire notizie nel nostro aggregatore.

<< Lezione Precedente – Inizio CorsoLezione Successiva >>

Share
Giampaolo Rossi

Sviluppatore di software gestionale da oltre 28 anni.

Recent Posts

Un Abbonamento per Tutti i Software

Sono arrivato alla convinzione che un abbonamento per tutti i miei software gestionali sia il…

11 mesi ago

Software di Magazzino Gratuito

MerciGest è un software per la gestione del magazzino completamente gratuito. Continua a leggere→

11 mesi ago

Mettere il PC in Lock Screen

In ufficio può capitare di doversi allontanare dal proprio posto di lavoro, ecco che allora…

3 anni ago

Fare il reset togliendo la corrente

In questo articolo vedremo quando è più o meno utile togliere la corrente ad un…

3 anni ago

Prossimi Aggiornamenti Software

Dopo la pausa invernale dovuta al lavoro che devo fare per sostentarmi, eccomi di nuovo…

3 anni ago

Come Eliminare i Files in Windows

Vediamo come eliminare i files direttamente da Windows senza utilizzare il cestino. Continua a leggere→

3 anni ago