zoukankan      html  css  js  c++  java
  • MFC设置工具栏按钮Tip方法总结

    本节主要介绍工具栏按钮显示Tip信息,对应添加工具栏的步骤见工具栏编程

    静态方法

    直接在资源视图里,对要修改的工具栏的某个按钮,在其属性对话框中,对Prompt属性进行修改;Prompt格式为“字符串1 字符串2”,其中字符串1是状态栏提示信息,字符串2是工具栏提示信息,我们修改字符串2即可。

    例如:

    动态方法

    1. OnUserToolTip

    我们可以将框架类中的m_wndToolBar成员变量从CToolBar类型替换成CMFCToolBar类型,并在CMFCToolBar派生类中重写OnUserToolTip 函数,其函数声明如下:

    virtual BOOL OnUserToolTip(
          CMFCToolBarButton* pButton,
          CString& strTTText 
    ) const;
    

    当一个Toolbar按钮需要显示一个Tip信息时,该函数由主框架自动调用。

    2. OnToolTipNotify

    该方法可以使用于框架类、View类、对话框类中,具体步骤如下:

    步骤1:激活Tool Tips

    • 方法一:EnableToolTips(TRUE);
    • 方法二:CreateEx()函数中设置CBRS_TOOLTIPS标识。

    步骤2:函数声明

    afx_msg BOOL OnToolTipNotify(UINT id,NMHDR*pNMHDR,LRESULT*pResult)
    

    步骤3:添加消息映射

    ON_NOTIFY_EX(TTN_NEEDTEXT,0,OnToolTipsNotify)
    

    步骤4:函数实现

    BOOL CMainFrame::OnToolTipNotify(UINT id, NMHDR*pNMHDR, LRESULT*pResult)  
    {  
        TOOLTIPTEXT*pTTT = (TOOLTIPTEXT*)pNMHDR;
        //获取工具栏按钮ID
        UINT nID = pNMHDR->idFrom;                                             
        if (nID)  
        {  
            //根据ID获取按钮索引 
            UINT nIndex = m_wndToolBar.CommandToIndex(nID);                     
            CString strTipText= _T("");
            //判断索引是否正确
            if (-1 != nIndex)                                                  
            {  
                //获得资源句柄  
                pTTT->lpszText = "Tip";               
                //获得资源句柄  
                pTTT->hinst = AfxGetResourceHandle();                        
                return true;  
            }  
        }  
        return false;  
    }
    

    可以参考网络版的msdn:https://msdn.microsoft.com/zh-cn/library/cc485577(v=vs.71).aspx


  • 相关阅读:
    SpringBoot之集成Socket
    SpringBoot之集成WebSocket
    SpringBoot之统一异常处理
    请求的转发和重定向
    5+App使用定位
    将Tomcat注册为Windows服务
    Tomcat环境变量设置
    CentOS7搭建Gitlab详细过程
    Python 12 内置函数
    Python 11 生成器
  • 原文地址:https://www.cnblogs.com/jinxiang1224/p/8468314.html
Copyright © 2011-2022 走看看