TextFile
toolbar Menu e toolbar rappresentano il cuore dell'interfaccia di qualsiasi applicazione desktop. Un menu ben organizzato guida l'utente tra le funzionalità disponibili, mentre una toolbar con icone chiare permette di eseguire le operazioni più frequenti in modo immediato.
home page
 

Creare menu e toolbar nelle applicazioni desktop

Pubblicato il: 30-6-2026

Ultima Modifica: 30-6-2026

Creare menu e toolbar nelle applicazioni desktop 🖥️📋

Una delle caratteristiche fondamentali di qualsiasi applicazione desktop è la presenza di un'interfaccia intuitiva e facile da usare. Due degli elementi più importanti sono senza dubbio il menu e la toolbar (barra degli strumenti).

Il menu permette all'utente di accedere in modo ordinato a tutte le funzionalità del programma, mentre la toolbar offre pulsanti per eseguire rapidamente le operazioni più comuni con un semplice clic.

In questo articolo vedremo cosa sono, come si progettano e come si realizzano utilizzando un ambiente di sviluppo visuale come Lazarus, ma i concetti illustrati sono validi anche per Delphi, Visual Basic, C++ Builder e molti altri strumenti di sviluppo.


📖 Cos'è un menu?

Il menu è una struttura gerarchica composta da voci e sottomenu che consentono all'utente di accedere alle funzioni del programma.

Un menu ben progettato rende il software più semplice da utilizzare e permette di trovare rapidamente ogni comando.

Un classico esempio è il menu presente nella maggior parte delle applicazioni:

File
 ├─ Nuovo
 ├─ Apri...
 ├─ Salva
 ├─ Salva con nome...
 ├────────────
 └─ Esci

Modifica
 ├─ Annulla
 ├─ Ripristina
 ├────────────
 ├─ Taglia
 ├─ Copia
 └─ Incolla

Visualizza

Strumenti

Aiuto

Questa organizzazione è ormai diventata uno standard che gli utenti riconoscono immediatamente.


🎯 Perché utilizzare un menu?

Un menu permette di:

  • 📂 organizzare le funzionalità

  • 🔍 trovare facilmente un comando

  • 🖱️ evitare pulsanti inutili nella finestra

  • 📋 mantenere ordinata l'interfaccia

  • ⌨️ associare scorciatoie da tastiera


🧰 Cos'è una toolbar?

La toolbar è una barra contenente pulsanti rappresentati da icone.

Lo scopo è offrire un accesso immediato ai comandi più utilizzati.

Ad esempio:

🆕 📂 💾 ✂️ 📄 📋 🔍 🖨️

Ogni pulsante richiama la stessa funzione disponibile nel menu.

Per esempio:

  • 🆕 Nuovo documento

  • 📂 Apri

  • 💾 Salva

  • ✂️ Taglia

  • 📄 Copia

  • 📋 Incolla

  • 🖨️ Stampa


🏗️ Menu e toolbar devono lavorare insieme

Uno degli errori più comuni consiste nel duplicare il codice.

La regola è molto semplice:

Menu e toolbar devono richiamare la stessa procedura.

In questo modo il codice sarà più ordinato e facile da mantenere.

Ad esempio:

Menu File → Apri
        │
        ├──────────────┐
Toolbar → Pulsante Apri│
        │              │
        ▼              ▼
      Procedura ApriDocumento

Entrambi eseguono la stessa funzione.


🖥️ Creare un menu in Lazarus

Lazarus mette a disposizione il componente:

TMainMenu

Per inserirlo:

  1. Aprire la finestra principale.

  2. Selezionare la scheda Standard.

  3. Trascinare TMainMenu sulla form.

Il componente non sarà visibile durante l'esecuzione ma comparirà nella parte inferiore dell'IDE.


➕ Aggiungere le voci del menu

Facendo doppio clic su TMainMenu si apre l'editor visuale.

È possibile aggiungere facilmente:

File
Modifica
Visualizza
Strumenti
Aiuto

Successivamente si possono inserire le varie voci:

File
 ├─ Nuovo
 ├─ Apri
 ├─ Salva
 ├─ Salva con nome
 ├────────────
 └─ Esci

Il tutto senza scrivere una sola riga di codice.


⚙️ Gestire il clic di una voce

Ogni voce del menu possiede un evento chiamato:

OnClick

Basta fare doppio clic sull'evento e Lazarus genera automaticamente il metodo.

procedure TForm1.mnuEsciClick(Sender: TObject);
begin
  Close;
end;

In questo esempio il comando Esci chiude l'applicazione.


📂 Aprire un file

Supponiamo di avere una voce:

File → Apri

Il codice potrebbe essere:

procedure TForm1.mnuApriClick(Sender: TObject);
begin
  if OpenDialog1.Execute then
    ShowMessage(OpenDialog1.FileName);
end;

Il componente TOpenDialog visualizza automaticamente la finestra di apertura dei file.


💾 Salvare un documento

Utilizzando TSaveDialog:

procedure TForm1.mnuSalvaComeClick(Sender: TObject);
begin
  if SaveDialog1.Execute then
    Memo1.Lines.SaveToFile(SaveDialog1.FileName);
end;

In poche righe è possibile salvare il contenuto di un controllo Memo.


🛠️ Creare una toolbar

Il componente utilizzato è:

TToolBar

Una volta inserito nella finestra sarà sufficiente aggiungere vari pulsanti.

Ogni pulsante è un componente:

TToolButton

Esempio:

[Nuovo]
[Apri]
[Salva]
[Stampa]

🖼️ Utilizzare le icone

Una toolbar senza immagini risulta poco intuitiva.

Per visualizzare le icone si utilizza un componente:

TImageList

L'ImageList contiene tutte le immagini della toolbar.

Ogni pulsante visualizzerà automaticamente una delle icone presenti.


🎨 Scegliere icone efficaci

Le immagini devono essere:

  • semplici

  • riconoscibili

  • tutte dello stesso stile

  • della stessa dimensione

Generalmente si usano:

  • 16×16 pixel

  • 24×24 pixel

  • 32×32 pixel


🔄 Riutilizzare lo stesso codice

Il modo migliore consiste nel creare una procedura comune.

procedure TForm1.ApriDocumento;
begin
  if OpenDialog1.Execute then
    ShowMessage(OpenDialog1.FileName);
end;

Poi sia il menu sia il pulsante richiamano quella procedura.

Menu:

procedure TForm1.mnuApriClick(Sender: TObject);
begin
  ApriDocumento;
end;

Toolbar:

procedure TForm1.tbApriClick(Sender: TObject);
begin
  ApriDocumento;
end;

Il codice sarà molto più ordinato.


⌨️ Le scorciatoie da tastiera

Un buon programma dovrebbe prevedere anche gli shortcut.

I più comuni sono:

Comando Shortcut
Nuovo Ctrl+N
Apri Ctrl+O
Salva Ctrl+S
Stampa Ctrl+P
Copia Ctrl+C
Taglia Ctrl+X
Incolla Ctrl+V
Trova Ctrl+F
Esci Alt+F4

L'utente esperto potrà così lavorare molto più velocemente.


📑 I menu contestuali

Un'altra funzionalità molto utile è il menu contestuale.

Compare quando si preme il tasto destro del mouse.

In Lazarus viene realizzato tramite il componente:

TPopupMenu

Ad esempio:

Copia

Incolla

Taglia

Elimina

Questo tipo di menu rende l'interfaccia ancora più comoda.


🎨 Alcuni consigli di progettazione

Quando si realizza un menu è bene seguire alcune semplici regole.

✅ Utilizzare nomi chiari.

❌ Evitare abbreviazioni poco comprensibili.

✅ Raggruppare i comandi simili.

✅ Inserire separatori tra gruppi di funzioni.

✅ Non creare menu troppo lunghi.

✅ Inserire nella toolbar soltanto le operazioni più frequenti.

Un'interfaccia ordinata migliora notevolmente l'esperienza dell'utente.


🚀 Un piccolo esempio di organizzazione

Un editor di testo potrebbe avere:

Menu

File
Modifica
Visualizza
Formato
Strumenti
Aiuto

Toolbar:

🆕 📂 💾

✂️ 📄 📋

↶ ↷

🔍

🖨️

Questa disposizione è familiare alla maggior parte degli utenti e consente di trovare rapidamente i comandi principali.


🎯 Conclusione

Menu e toolbar rappresentano il cuore dell'interfaccia di qualsiasi applicazione desktop. Un menu ben organizzato guida l'utente tra le funzionalità disponibili, mentre una toolbar con icone chiare permette di eseguire le operazioni più frequenti in modo immediato.

Separare la logica del programma dall'interfaccia, riutilizzando le stesse procedure sia per le voci di menu sia per i pulsanti della toolbar, rende il codice più pulito, più semplice da mantenere e più facile da estendere. Seguendo queste buone pratiche sarà possibile sviluppare applicazioni dall'aspetto professionale, intuitive e piacevoli da utilizzare, indipendentemente dal linguaggio o dall'ambiente di sviluppo scelto.