zoukankan      html  css  js  c++  java
  • MFC2消息处理

    #include <afxwin.h>
    #include "resource.h"
    
    class MyFrame:public CFrameWnd
    {
    private:
    	CMenu *FMenu;
    public:
    	MyFrame()
    	{
    		Create(NULL,"Hello MFC");//建立窗口
    		FMenu = new CMenu;//产生菜单
    		FMenu->LoadMenu(IDR_MENU1);//加载菜单
    		SetMenu(FMenu);//设置窗口使用的菜单
    	}
    	~MyFrame()//析构函数
    	{
    		delete FMenu;
    	}
    	afx_msg void OnExit()
    	{		
    		MessageBox("TEST");
    		MessageBox("Exit1");
    		DestroyWindow();//关闭窗口
    	}
    	afx_msg void OnLButtonDown(UINT nFlags,CPoint point)
    	{
    		SetCapture();//取得鼠标消息接收权
    	}
    	afx_msg void OnMouseMove(UINT nFlags,CPoint point)
    	{
    		if(this == GetCapture())//鼠标光标在窗口上
    		{
    			CClientDC aDC(this);//建立画布
    			aDC.SetPixel(point,RGB(255,0,0));//SetPixel画红点
    		}
    	}
    	afx_msg void OnLButtonUp(UINT nFlags,CPoint point)
    	{
    		ReleaseCapture();//释放鼠标消息接收权
    	}
    	DECLARE_MESSAGE_MAP()//声明消息映射
    };
    
    BEGIN_MESSAGE_MAP(MyFrame,CFrameWnd)//建立MyFrame类的消息映射
    	ON_COMMAND(ID_EXIT1,OnExit)
    		ON_WM_LBUTTONDOWN()
    		ON_WM_MOUSEMOVE()
    		ON_WM_LBUTTONUP()
    END_MESSAGE_MAP()
    
    class MyApp:public CWinApp
    {
    public:
    	BOOL InitInstance()
    	{
    		CFrameWnd *Frame = new MyFrame;//产生窗口对象
    		m_pMainWnd = Frame;//将窗口对象设置给应用程序
    		Frame->ShowWindow(SW_SHOW);//显示窗口
    		return true;
    	}
    } a_app;
    
  • 相关阅读:
    [论文复现笔记]Im2Struct
    深度学习踩坑
    Matlab问题汇总
    Linux网络服务
    探索Blender
    [每日挖坑]20200728
    Ubuntu重启之后显卡挂了
    3D视觉知识点
    [每日挖坑]20200727
    遥感影像相关知识
  • 原文地址:https://www.cnblogs.com/liulun/p/1767020.html
Copyright © 2011-2022 走看看