Guide e Tutorials:indexed | ||||||||||||
La funzione GetMenuItemInfo (Tutorial completo) La prima funzione che andiamo a studiare, relativamente allo sviluppo di menu sempre più completi è GetMenuItemInfo. Come si riesce facilmente ad apprendere dalla denominazione di tale funzione, GetMenuItemInfo recupera le informazioni relative ad un menu o ad un oggetto-menu, ossia come abbiamo visto nella lezione relativa alla struttura MenuItemInfo, a qualsiasi oggetto che compone il menu: stringhe di testo, immagini bitmap, OptionButton e così via. Recuperando la lezione precedente, possiamo affermare che tutte le informazioni acquisite dai menu sulla struttura e la composizione del menu stesso, sono determinate dai sottoparametri contenuti da fMask all'interno della struttura MenuItemInfo e vengono passate al sistema come parametro lpmii. Tutto questo sarà comunque esposto in maniera più comprensibile nel corso della lezione. Aggiungiamo solamente che nel caso la funzione abbia un risultato positivo, il valore di ritorno sarà diverso da zero. In caso contrario evidentemente il valore ritornato sarà proprio zero. Vediamo adesso la dichiarazione della funzione:
Naturalmente sarà inutile avere in un progetto una dichiarazione simile se non si impone anche la struttura a cui fa riferimento, nella fattispecie MENUITEMINFO Aperto allora il solito modulo .bas, inseriamo sia la dichiarazione MenuItemInfo sia la struttura di cui abbiamo parlato la scorsa volta. Ecco quindi come apparirà il modulo:
Una cosa importantissima da tenere a mente è che, come spiegato per MENUITEMINFO, non indicare le costanti dei flags significa non utilizzare parti della struttura. Se infatti volessimo riservarci la possibilità di determinare se una voce del menu è contrassegnata o meno dal segno di spunta o dall'OptionButton, bisognerà dichiarare la costante relativa al sottoparametro MFS_CHECKED. Così se volessimo determinare successivamente lo stato di una particolare voce del menu, dovremo dichiarare come pubblica la costante relativa a MIIM_STATE. Ecco allora come apparirebbe il modulo:
Apriamo adesso una piccola parentesi tanto per riposarci un po': le piattaforme che supportano la funzione MenuItemInfo sono Windows95, Windows98, Windows2000, Windows NT versione 4.0 o superiore, Windows CE versione 1.0 o superiore. Fatta questa piccola pausa di cui nessuno avrà tratto grande giovamento, ritorniamo alla lezione vera e propria, andando ad elencare tutti i parametri della funzione.
La prossima volta vedremo un bell'esempietto che ci permette di ricavare tutte le informazioni relative ad un determinato menu. Perchè la prossima volta e non ora? Semplicemente perchè prima si dovranno introdurre altri concetti basilari, come la funzione GetMenu e la funzione GetMenuItemCount. ...alla prossima, quindi! |
Archivio: | ||||
Lezioni | Commenta questa lezione | Invia la tua guida | Avviso per le nuove lezioni | Proponi un argomento |
Visual Basic Italia© copyright 2000 - tutti i diritti riservati |