菜單項的動態裝入

發表于:2007-07-14來源:作者:點擊數: 標簽:
菜單項的動態裝入是指菜單項的個數不固定. 例子就是文件菜單中最近打開的文件的列表。在第一次打開文件之前,該列表是空的,并且不在文件菜單中出現;打開一個文件后,該列表不再是空的,并且文件菜單中出現代表被打開文件的菜單項。 具體的實現過程如下: 在文件
菜單項的動態裝入是指菜單項的個數不固定. 例子就是文件菜單中最近打開的文件的列表。在第一次打開文件之前,該列表是空的,并且不在文件菜單中出現;打開一個文件后,該列表不再是空的,并且文件菜單中出現代表被打開文件的菜單項。
具體的實現過程如下:
在文件菜單里增加一個菜單項,標題任意,并假設菜單項的Name屬性是
opened_files_ list;
更改菜單項opened_files_list的可見屬性,使 opened_files_list.Visible=False
更改菜單項opened_files_list的下標屬性,使 opened_files_list.Index=0
在程序中控制菜單項opened_files_list的動態裝入。假設要顯示打開過的第二個文件的文件名,并且該文件名存放在一個文件名數組opened _file_name里。以下的代碼就實現了這一功能:
 
Load opened_files_list(1)
opened_files_list(1).Caption="&2"+opened_file_name(1)
opened_files_list(1).Visible=True
 
需要注意的是,對于下標為0的菜單項,不能用Load方法。因為在程序執行時,該菜單項就 已經被裝入到內存里了;另外,在菜單項的標題屬性字符里的"&"字符具有特殊的含義,它的作 用是在顯示該屬性字符串的同時,并不顯示"&"本身,而緊跟"&"的字符在顯示時具有下劃線, 并且該字符成為熱鍵。如果下標不為0的菜單項不再需要,為了減少對內存資源的占用,可以用Unload方法把它 從內存卸出;同樣地,不能用Unload卸出下標為0的菜單項。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97