XiaoHui.net 笑汇程序员论坛首页
工作并快乐着,职业并休闲着
寻梦的岁月从不言辛苦几许,
不问收获几多……
» 游客:  申请新用户 | 登录 | 会员 | 统计 | 帮助 » XiaoHui.Net 笑汇程序员论坛 | 纯文字版 | 全站索引 | XiaoHui.com


显示鼠标所指菜单的提示文本

RSS 订阅当前论坛  

上一主题 下一主题
     

标题: 显示鼠标所指菜单的提示文本  
 
静林悠松
小水手
Rank: 1



UID 1665
精华 0
积分 6
帖子 6
阅读权限 10
注册 2006-1-9
来自 江苏
状态 离线
显示鼠标所指菜单的提示文本

"----------------------------------------------标准模块内容
Public OldWindowProc As Long
    " 保存默认的窗口函数的地址
Public Const GWL_WNDPROC As Long = -4

Public Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Private Declare Function GetMenu Lib "user32.dll" (ByVal hwnd As Long) As Long
Private Declare Function GetSubMenu Lib "user32.dll" (ByVal hMenu As Long, ByVal nPos As Long) As Long

Public OB As Object
"-----------------------------------------------------------------
Public Function MenuInfo(ByVal hwnd As Long, ByVal Msg As Long, ByVal wp As Long, ByVal lp As Long) As Long
    MenuInfo = CallWindowProc(OldWindowProc, hwnd, Msg, wp, lp)
    If Msg <> 287 Then Exit Function
   
    Select Case wp
        Case -2139095038 "第一个菜单的第一个子菜单
            OB.Caption = "自定义字符1"
        Case -2139095037 "增加了1
            OB.Caption = "自定义字符2"
        Case -2139095035 "第二个菜单的第一个子菜单
            OB.Caption = "自定义字符3"
        Case -2139095034
            OB.Caption = "自定义字符4"
    End Select
End Function
"-----------------------------------------------窗体代码
Private Sub Form_Load()
    Set OB = info "info为窗体上一个label控件,如果想把提示字符显示在其他控件可自行修改
    OldWindowProc = GetWindowLong(Me.hwnd, GWL_WNDPROC)
    Call SetWindowLong(Me.hwnd, GWL_WNDPROC, AddressOf MenuInfo)
End Sub

如果还有问题请与我交流Q 492610586
2006-1-9 08:39#1
查看资料  Blog  发短消息  顶部
     


  可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题  


 


所有时间为 GMT+8, 现在时间是 2008-12-2 20:07 Powered by Discuz! 4.1.0 清除 Cookies - XiaoHui.Net 笑汇程序员论坛 - Archiver