前几课讲窗体的外形,好像感兴趣的人不多,可能觉得窗体要搞那么漂亮干啥? 其实外表还是很重要的,要不现在咋这么多整容的、变性的呢?窗体也要整容阿,呵呵。 好吧,咱今天就来点实用的东西,谈谈窗体菜单。 相信很多人都知道excel可以自定义菜单栏和工具栏,非常简单,用起来也很爽把. (还不会的在论坛搜,一大把),你是否也想在窗体里也爽一把呢?这样就可以 打造完全属于自己的界面,不再依靠excel的界面了。 关于菜单的内容很多,估计要好几个课时,咱先从最基本的开始吧。 1、创建菜单CreateMenu Declare Function CreateMenu Lib "user32" Alias "CreateMenu" () As Long 这个api函数简单吧,连参数都没有,就是创建一个空菜单。 2、创建弹出式菜单 Declare Function CreatePopupMenu Lib "user32" () As Long 一样简单,没啥好说的。 3、添加菜单项 Declare Function AppendMenu Lib "user32" Alias "AppendMenuA" (ByVal hmenu As Long, ByVal wFlags As Long, ByVal wIDNewItem As Long, ByVal lpNewItem As Any) As Long 注意:这个函数是重点了。 hmenu 菜单句柄,哈,啥都有句柄,就像身份证,看得多了,句柄还真就是那么个东西。 wFlags 菜单常数标志,罗嗦了,有很多,这里就不列了,可以看api手册,砸门用一个 讲一个,一次性讲吃不消,没效果。 MF_STRING 在指定的条目处放置一个字串,就是说菜单项是一个字符串。 MF_POPUP 将一个弹出式菜单置于指定的条目,就是说菜单项是一个弹出式菜单(子菜单). wIDNewItem 指定菜单条目的新命令ID。如在wFlags参数中指定了MF_POPUP标志, 就应是一个弹出式菜单的句柄,就是菜单项的序号,随便设,1、2、3、4都行。 lpNewItem 如果在wFlags参数中指定了MF_STRING标志,这就代表在菜单中设置的字串, 如设置了MF_BITMAP标志,以后再说。 4、设置窗口菜单 Private Declare Function SetMenu Lib "user32" (ByVal hwnd As Long, ByVal hmenu As Long) As Long hwnd 懒得说了 hmenu 窗口的新菜单的句柄 建好了菜单,就把菜单的句柄给窗体,窗体上就有菜单了。 5、删除菜单 Declare Function DestroyMenu Lib "user32" (ByVal hmenu As Long) As Long 当窗体关闭的时候,菜单也就不用了,记得废了它。 好了,这课的内容就到这了,简单吧,回家自己建几个玩完就会了。 如果还想学记得顶啊,看个实例吧:
8thComrN.rar
(10.41 KB, 下载次数: 2240)
看完自己下课。
|