• 消息实例 鼠标到两个按钮的地方按钮消失


    实现了一个类:CHIDE类,继承自: public CButton(按钮的CHide类)

    class CHide : public CButton
    {
    // Construction
    public:
        CHide();
    
    // Attributes
    public:
         CHide *pBtn;
    // Operations
    public:
    
    // Overrides
        // ClassWizard generated virtual function overrides
        //{{AFX_VIRTUAL(CHide)
        //}}AFX_VIRTUAL
    
    // Implementation
    public:
        virtual ~CHide();
    
        // Generated message map functions
    protected:
        //{{AFX_MSG(CHide)
        afx_msg void OnMouseMove(UINT nFlags, CPoint point);
        //}}AFX_MSG
    
        DECLARE_MESSAGE_MAP()
    };

    按钮指针:

    public:
         CHide *pBtn;


    鼠标移动消息:
    BEGIN_MESSAGE_MAP(CHide, CButton)
        //{{AFX_MSG_MAP(CHide)
        ON_WM_MOUSEMOVE()
        //}}AFX_MSG_MAP
    END_MESSAGE_MAP()
    
    /////////////////////////////////////////////////////////////////////////////
    // CHide message handlers
    
    void CHide::OnMouseMove(UINT nFlags, CPoint point) 
    {
        // TODO: Add your message handler code here and/or call default
        pBtn->ShowWindow(SW_SHOW);//显示
        ShowWindow(SW_HIDE);//隐藏
        CButton::OnMouseMove(nFlags, point);
    }

    主对话框中引入头文件:

    #include "Hide.h"

    在主对话框中只在初始化函数中实现了:

        // TODO: Add extra initialization here
        m_btn1.pBtn=&m_btn2;
        m_btn2.pBtn=&m_btn1;
    m_btn2的地址给m_btn1的CHide 类型指针 pBtn

    发现自己的不足,善于利用找到的方法去扬长避短。行动起来。
  • 相关阅读:
    SVN安装配置与使用
    ext中对json数据的处理解析
    matlab保存数据
    DLL编程总结
    【MFC 】关于对话框中的OnVScroll() 和 OnHScroll
    OpenCV cvReleaseImage把图像怎么样了?
    [code] if (x<0)x=0;else if (x>255)x=255;
    【DM642学习笔记十】DSP优化记录
    DSP日志打印 LOG_printf
    【MFC】MFC文本框中显示浮点数
  • 原文地址:https://www.cnblogs.com/rechen/p/5100471.html
Copyright © 2020-2023  润新知