Menu (gb.qt4)

Questa classe rappresenta un menu popup o un elemento di un menu popup.

Questa classe è creabile.

Proprietà
Action   Restituisce o imposta la stringa di azione associata al controllo.
Caption   Un sinonimo della proprietà Text.
Checked   Indica se un menu è selezionato.
Children   Restituisce una collezione di ogni figlio del menu.
Closed  
Enabled   Indica se il menu è abilitato.
Name   Restituisce o imposta il nome del controllo menu.
Parent  
Picture   Restituisce o imposta l'icona visualizzata nel menu.
Proxy  
Radio   Ritorna o imposta se un menu si comporta come un pulsante di opzione.
Shortcut   Restituisce o imposta il nome del tasto di scelta rapida del menu.
Tag   Restituisce o imposta il tag associato al menu.
Text   Restituisce o imposta il testo visualizzato nel menu.
Toggle   Restituisce o imposta se questo Menu si comporta come un interruttore.
Value   Un sinonimo della proprietà Checked.
Visible   Indica se il menu è visibile.
Window   Restituisce la Window a cui il Menu appartiene.

Metodi
Close  
Delete   Elimina il menu.
Hide   Nasconde un menu.
Popup   Apre il menu sotto il puntatore del mouse e aspetta fino alla sua chiusura.
Show   Mostra il menu.

Eventi
Click   Viene sollevato quando l'utente ha fatto clic sul menu.
Hide   Questo evento viene sollevato subito dopo che il menu è stato nascosto.
Show   Viene sollevato poco prima che venga visualizzato il menu.

Creazione di un menu popup.

Un menu popup si ottiene creando un albero gerarchico di oggetti Menu.

  • Ogni menu della gerarchia con figli diventa un sottomenu.

  • Ogni foglia dell'albero gerarchico diventa una voce di menu.

  • Il menu radice deve essere un menu di livello superiore (vedi sotto).

Menu di livello superiore

Per creare un menu di livello superiore, ovvero una voce nella barra dei menu, la finestra deve essere l'oggetto principale del menu.

Non appena una finestra ha almeno un menu visibile di livello superiore, la barra dei menu della finestra diventa visibile. Altrimenti, il menu rimane nascosto.

Il desktop Unity rimuove la barra dei menu dalla finestra dell'applicazione per inserirla nel pannello desktop superiore.

Purtroppo, non funziona bene su finestre che non sono finestre di livello superiore, ma finestre incorporate (come fa il controllo Workspace).

Per aggirare il problema, eseguire il codice seguente all'inizio del programma:
Application.Env["APPMENU_DISPLAY_BOTH"] = "1"

Per creare un menu contestuale a comparsa non visibile sulla barra dei menu, basta impostare la sua proprietà Visible su False.

Le voci di menu

Le voci di menu sono oggetti di menu che non hanno figli.

Da notare che i controlli Menu non ereditano la classe Control e non generano alcun evento della classe Control.

L'ordine delle voci di menu nel menu principale popup segue l'ordine della creazione.

Separatori

Se la proprietà Text di una voce di menu è nulla, quella voce di menu viene sostituita da un separatore.

I separatori inutili vengono rimossi automaticamente quando viene visualizzato il menu a comparsa.