| 域名空间 下载中心 社区论坛 信息公告 MY小屋 |
![]() |
联系我们 设为首页 加入收藏 |
|
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿 论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图 专题 | 应用软件 | 聊天通讯 | Q Q 专栏 | 建站经验 | 在线工具 | 站长Club | 注 册 表 | 旧版 社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 韩国素材 | 素材图库 | 广告服务 | 服务 |
| 新版上线![旧版] | |||||
注:打开慢时请稍等
创建位图菜单http://www.iyit.net 日期:2006-4-29 22:29:50 来源: 点击: |
创建位图菜单 创建位图菜单其实非常简单,需要用到Windows应用程序编程接口 (API)的一些菜单函数和位图函数,将这些函数的声明包含在应用程序 的标准模块中,具体的内容请参见样例程序。步骤如下: 1.使用函数GetSubMenu来提取子菜单项的句柄,并通过使用函数C reateCompatibleD C来创建一个兼容的设备环境描述表; 2.在一个循环过程中通过使用CreateCompatibleBitmap函数、Se lectObject函数以及BitBlt函数来分别将各个菜单项所载入的位图选 入到兼容设备环境中; 3.通过ModifyMenu函数绘制真正的位图菜单选项; 4.使用DeleteDC函数来释放设备环境,以便其他的程序可以使用 它们。 提取位图可以有多种方法,在本样例程序中在窗体上设置了四个 图形框控件,使用它们载入4个预设的图标来作为菜单选项位图的源文 件。当然也可以使用其他的方法,例如使用LoadPicture函数来从磁盘 装载位图。 样例程序 1. 在Visual Basic中开始一个新项目工程(project),用缺省的 方法建立Form1。 2. 创建一个新的模块,采用缺省的方法建立Module1.Bas。 3. 将如下声明语句和常量添加到Module1.Bas模块中: Option Explicit Declare Function GetMenu Lib "user32" (ByVal hwnd As Lon g) As Long Declare Function GetSubMenu Lib "user32" (ByVal hMenu As Long, ByVal nPo s As Long) As Long Declare Function GetMenuItemID Lib "user32" (ByVal hMenu As Long, ByValn Pos As Long) As Long Declare Function ModifyMenu Lib "user32" Alias "ModifyMe nuA" (ByVal hMen u As Long, ByVal nPosition As Long, ByVal w Flags As Long, ByVal wIDNewItemAs Long, ByVal lpString As An y) As Long Declare Function CreateCompatibleDC Lib "gdi32" (ByVal h dc As Long) AsLo ng Declare Function DeleteDC Lib "gdi32" (ByVal hdc As Long ) As Long Declare Function CreateCompatibleBitmap Lib "gdi32" (ByV al hdc As Long,B yVal nWidth As Long, ByVal nHeight As Long) As Long Declare Function S ctObject Lib "gdi32"(ByVal hdc As L ong, ByVal hObje ct As Long) As Long Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Lo ng, ByVal x AsLo ng, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrc DC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) AsL ong Public Const SRCCOPY = %26HCC0020 Public Const MF_BYPOSITION = %26H400%26 Public Const MF_BITMAP = %26H4%26 注意:上面的声明语句需要书写在一行内。 4. 在Form1上添加4个图形框控件,Name属性设置为Picture1,Ind ex属性依次设 置为0、1、2、 3,AutoRedrew属性设置为True,AutoResize属性 设置为Ture,Visabl e属性设置为False。 5. 将上面的4个图形框控件的Picture属性依次设置为Face1.ico 、Face2.ico、 Face3.ico、Face4.ico。 6. 在Form1上添加第一个菜单项,将它的标题设置为"[%26F]文件", 名称设置 为mnuFile。在其下添加一个子菜单项,将它的标题设置为"[%26E] 退出",名称设置为mnuExit。 7. 在Form1上添加第二个菜单项,将它的标题设置为"[%26A]脸谱", 名称设置 为mnuFace。在其下添加4个子菜单项,分别将改4个子菜单项的名 称设置为"[N]正常"、"[%26S]微笑"、" [%26L]大笑"、以及"[%26O]悲伤"。 将它们的名称设置为"mnuFaceSel",并相应将这4个子菜单项的索引设 置为0、1、2、3。 本新闻共2页,当前在第1页 1 2 编辑: [发送给好友] [打印本页] [关闭窗口] [返回顶部] 上一篇:VB编程开发常见技巧 下一篇:播放声音文件 转载请注明来源:www.iyit.net 特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。 |
| 最新更新 | 热点排行 | 推荐新闻 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 友情链接 | ||||||
| 设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接 |
| |||||||