在Win32 Application 环境下实现MFC窗口的创建
// Win32下MFC.cpp : Defines the entry point for the application.
//
#include "stdafx.h"
class CMyFrameWnd:public CFrameWnd
{
//类内添加声明宏
DECLARE_MESSAGE_MAP()
public: //标准实现类内声明消息函数
afx_msg int OnCreate(LPCREATESTRUCT cs);
afx_msg void OnPaint();
/* 非标准的实现类内声明消息函数
//类内声明消息函数
public:
LRESULT OnCreate(WPARAM wParam,LPARAM lParam);
LRESULT OnPaint(WPARAM wParam,LPARAM lParam);
*/
};
//类外
BEGIN_MESSAGE_MAP(CMyFrameWnd,CFrameWnd)//(本类和基类)
//在BEGIN与END之间添加消息
ON_WM_CREATE()
ON_WM_PAINT()
END_MESSAGE_MAP()
//标准形式实现消息函数类外的定义
int CMyFrameWnd::OnCreate(LPCREATESTRUCT cs)
{
AfxMessageBox("即将创建一个窗口!");
return 0;
}
void CMyFrameWnd::OnPaint()
{
PAINTSTRUCT ps={0};
HDC hDc=::BeginPaint(this->m_hWnd,&ps);
::TextOut(hDc,200,200,"Hello",5);
::EndPaint (m_hWnd,&ps);
}
/* 非标准的实现类外函数的定义
//在类外实现窗口创建函数功能
LRESULT CMyFrameWnd::OnCreate (WPARAM wParam,LPARAM lParam)
{
AfxMessageBox("即将创建一个窗口!");
return 0;
}
//类外实现绘图功能
LRESULT CMyFrameWnd::OnPaint (WPARAM wParam,LPARAM lParam)
{
PAINTSTRUCT cs={0};
HDC hDc=::BeginPaint(this->m_hWnd,&cs);
::TextOut(hDc,200,200,"hello",5);
::EndPaint(m_hWnd,&cs);
return 0;
}
*/
//应用程序类
class CMyWinApp:public CWinApp
{
public:
CMyWinApp();
virtual BOOL InitInstance();
};
CMyWinApp theApp;
CMyWinApp::CMyWinApp()
{
}
//重新添加虚函数功能
BOOL CMyWinApp::InitInstance()
{
CMyFrameWnd *pFrame=new CMyFrameWnd();
pFrame->Create(NULL,"MFCCmd");
m_pMainWnd=pFrame;
pFrame->ShowWindow(SW_SHOW);
pFrame->UpdateWindow();
return TRUE;
}
在Win32 Application 环境下实现MFC窗口的创建的更多相关文章
- [转]VS 2012环境下使用MFC进行OpenGL编程
我就不黏贴复制了,直接给出原文链接:VS 2012环境下使用MFC进行OpenGL编程 其它好文链接: 1.OpenGL系列教程之十二:OpenGL Windows图形界面应用程序
- win32 sdk 环境下创建状态栏
今天在学习状态栏,出了好多的问题,这里记录下. 要创建状态栏用:CreateStatusWindow CreateStatusWindow函数创建一个状态窗口,通常用于显示应用程序的状态.窗口通常显示 ...
- Linux环境下配置eclipse,以及创建maven工程
一:maven的安装 1.安装配置maven环境变量 2.验证 二:eclipse的安装 3.解压配置eclipse 4.启动eclipse,必须在虚拟机的eclipse下启动 5.结果 三:修改配置 ...
- 011 Linux环境下配置eclipse,以及创建maven工程
一:maven的安装 1.安装配置maven环境变量 2.验证 二:eclipse的安装 3.解压配置eclipse 4.启动eclipse,必须在虚拟机的eclipse下启动 5.结果 三:修改配置 ...
- x64 win64编译环境下ADO链接Access数据库的问题解决
原文链接地址:https://blog.csdn.net/HW140701/article/details/71077579 Win32编译环境下,用ADO数据库连接Access数据库一般都不会报错, ...
- Win32环境下代码注入与API钩子的实现(转)
本文详细的介绍了在Visual Studio(以下简称VS)下实现API钩子的编程方法,阅读本文需要基础:有操作系统的基本知识(进程管理,内存管理),会在VS下编写和调试Win32应用程序和动态链接库 ...
- Win32环境下代码注入与API钩子的实现
本文详细的介绍了在Visual Studio(以下简称VS)下实现API钩子的编程方法,阅读本文需要基础:有操作系统的基本知识(进程管理,内存管理),会在VS下编写和调试Win32应用程序和动态链接库 ...
- Win32 Console Application、Win32 Application、MFC三者之间的联系和区别
转自:http://blog.csdn.net/c_base_jin/article/details/52304845 在windows编程中,我们或多或少都听说这三个名称,分别是Win32 Cons ...
- 优雅解决 SpringBoot 工程中多环境下 application.properties 的维护问题
微信号:geekoftaste, 期待与大家一起探讨! 背景 我们知道 SpringBoot 有一个全局的配置文件 application.properties, 可以把工程里用到的占位符,第三方库的 ...
随机推荐
- jsp模板配置
<%-- Created by IntelliJ IDEA. User: ${USER} Date: ${DATE} Time: ${TIME} To change this template ...
- JS中split使用方法和数组中元素的删除
JS中split使用方法和数组中元素的删除 JS中split使用方法 <script language="javascript"> function spli(){ d ...
- Expression Trees (C# and Visual Basic)
https://msdn.microsoft.com/en-us/library/bb397951.aspx Expression trees represent code in a tree-lik ...
- oracle buffer cache的基本原理
Buffer cache 的原理 一. 1·)当一个服务器进程需要读数据到buffer cache中时,首先必须判断该数据在buffer 中是否存在,如果存在且可用,则获取该数据,根据lru算法在lr ...
- 解析HTML文件
#!/usr/bin/env python3 # -*- coding: UTF-8 -*- from bs4 import BeautifulSoup import operator import ...
- kafka参数在线修改
当kafka集群单个节点出现磁盘满了,需要清理历史topic数据:方法如下 1): 停掉kafka进程,将kafka的server.properties中的log.retention.hours=1/ ...
- 0420-mysql关键词/错误提示关键词
操作关键词: 1.show //查看.展示 2.use //选择(库/表) 3.database/s //库/所有库 4.table/s //表/所有表 5.primary key //主键:不可重复 ...
- bzoj3211: 花神游历各国(线段树) 同codevs2492
3211: 花神游历各国 Time Limit: 5 Sec Memory Limit: 128 MBSubmit: 3628 Solved: 1326[Submit][Status][Discu ...
- 数据通讯与网络 第五版第24章 传输层协议-UDP协议部分要点
24.1 介绍 本章节主要集中于传输层协议的解读,图24.1展示TCP.UDP.SCTP在TCP\IP协议栈的位置 24.1.1 服务(Service) 每个协议都提供不同的服务,所以应该合理正确的使 ...
- 在C#程序中,创建、写入、读取XML文件的方法
一.在C#程序中,创建.写入.读取XML文件的方法 1.创建和读取XML文件的方法,Values为需要写入的值 private void WriteXML(string Values) { //保存的 ...