构建mfc窗体的简单示例

代码如下:

#include<afxwin.h>//包含MFC头文件
//从MFC的主要框架窗体派生用户窗体类
class CMyWnd:public CFrameWnd
{
public:
 CMyWnd(LPCTSTR szTitle)
 {
  //调用父类Create函数创建窗体
  Create(NULL,szTitle);
 }
};
//从MFC的应用程序派生用户程序类
class CMyApp:public CWinApp
{
public:
 virtual BOOL InitInstance();
};
//覆盖继承的应用程序初始化虚函数
BOOL CMyApp::InitInstance()
{
 //创建窗体并保存到m_pMainWnd中
 m_pMainWnd = new CMyWnd(_T("一个简单的MFC程序"));
 m_pMainWnd->ShowWindow(m_nCmdShow);
 return TRUE;
}
CMyApp myApp;

(0)

相关推荐

  • MFC程序执行过程深入剖析

    本文较为详细的分析了VC++程序设计的MFC程序执行过程,有助于加深对MFC程序运行原理的理解.分享给大家供大家参考之用.具体分析如下: 一 MFC程序执行过程剖析 1)我们知道在WIN32API程序当中,程序的入口为WinMain函数,在这个函数当中我们完成注册窗口类,创建窗口,进入消息循环,最后由操作系统根据发送到程序窗口的消息调用程序的窗口函数.而在MFC程序当中我们不在能找到类似WinMain这样的程序入口,取而代之的是一系列派生类的声明和定义以及一个冲CWinApp类派生而来的类的全局

  • MFC自定义消息的实现方法

    一.概述: 消息机制是windows程序的典型运行机制,在MFC中有很多已经封装好了的消息,如WM_BTN**等.但是在有些特殊情况下我们需要自定义一些消息去完成一些我们所需要的功能,这时候MFC的向导不能帮助我们做到这一点.对此,我们可以通过添加相应的代码去完成这个功能. 二.实现方法: 添加自定义消息操作如下: 1. 建立MFC工程,如基于对话框的应用程序,Test. 2. 在资源中添加要处理的消息的值,即在CTestDlg.h中添加 如下代码. (因为很多MFC的消息是在WM_USER内的

  • MFC创建右键弹出菜单的方法

    本文实例讲述了MFC创建右键弹出菜单的方法.分享给大家供大家参考.具体实现方法如下: ①.添加一个菜单资源,ID为IDM_RIGHTMENU.因为在显示右键菜单时顶级菜单是不显示的,所以可以给它设置任意文本. ②.给视类添加WM_RBUTTONDOWN消息,在该消息中处理右键弹出菜单.因为视类窗口始终覆盖在框架窗口之上,框架窗口接收不到鼠标消息,所以由视类捕获WM_RBUTTONDOWN消息. 复制代码 代码如下: void CMenuView::OnRButtonDown(UINT nFlag

  • MFC程序对文件的处理方法

    对文件的处理是MFC程序设计中非常常见的应用.本文就以实例形式做一简单叙述.具体方法如下: 1.CFileDialog的应用 格式如下: CFileDialog::CFileDialog( BOOL bOpenFileDialog, LPCTSTR lpszDefExt = NULL, LPCTSTR lpszFileName = NULL, DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, LPCTSTR lpszFilter =

  • MFC设置对话框焦点的方法简述

    本文简单讲述了MFC设置对话框焦点的方法,分享给大家供大家参考.具体实现方法如下: 具体的方法有两种: 1. 设置对话框控件的tab order. 按Ctrl+D即可看见.将需要被设置到焦点的空间的tab order设为1. 2. 对话框的OnInitDialog返回FALSE.解释如下:(摘抄至msdn)   If OnInitDialog returns nonzero, Windows sets the input focus to the first control in the dia

  • MFC实现全屏功能代码实例

    windows应用程序中有很多的播放器都有快捷键控制窗口以全屏幕的方式显示.MFC实现给应用程序加上全屏幕的功能,并不需要很多的代码,比如给一个基于对话框的应用程序加上全屏功能只需要以下少量代码就可以实现了. 实现代码如下所示: void CFullScreenDlg::FullScreenView(void) { RECT rectDesktop; WINDOWPLACEMENT wpNew; if (!IsFullScreen()) { // We'll need these to rest

  • MFC绘制不规则窗体的方法

    本文实例讲述了MFC 绘制不规则窗体的方法.分享给大家供大家参考.具体分析如下: 实现过程: 1.首先创建基于DLG的MFC应用程序,命名为:tryBGDlg,并将DLG的属性设置为:Title Bar :False ,其它设置不变 2.制作两幅图像,其中的一幅黑白图像,是根据播放器外观来制作的,其中白色区域是要保留的最终在桌面上显示的区域.将这两幅图像添加到工程中,第一个ID号设置为IDB_INTERFACE,第二个ID号设置为:IDB_MASK 3.在CtryBGDlg类中添加一个在函数:

  • MFC命名规则汇总

    本文汇总了MFC中消息.控件.对话框等等的命名规则,作为初学者应详细了解并遵守这类规则.详细规则如下所示: 一.MFC中ID 编号原则: IDC_:控件的ID命名前缀(Control) IDM_:菜单的ID命名前缀(Menu) IDD_:对话框的ID命名前缀(Dialog) IDR_:资源的ID命名前缀(Resource) IDS_:字符串的ID命名前缀(String) IDB_:位图资源的ID命名前缀(Bitmap) 二.MFC系统消息前缀小集 ABM        应用程序桌面工具条appl

  • 构建mfc窗体的简单示例

    复制代码 代码如下: #include<afxwin.h>//包含MFC头文件//从MFC的主要框架窗体派生用户窗体类class CMyWnd:public CFrameWnd{public: CMyWnd(LPCTSTR szTitle) {  //调用父类Create函数创建窗体  Create(NULL,szTitle); }};//从MFC的应用程序派生用户程序类class CMyApp:public CWinApp{public: virtual BOOL InitInstance(

  • element用脚本自动化构建新组件的实现示例

    目录 背景 element-ui的自动化构建是怎么做的 makefile new.js file-save 引用资源文件的修改 fs.createWriteStream 总结 背景 在公司的项目中,每次碰到新需求的时候,你是不是都还在用新建页面 => 往页面中添加内容,如vue模板 => 添加路由.难道不觉得麻烦吗?如果是的话,不妨试试自动化构建吧,太香了~ element-ui的自动化构建是怎么做的 在开源项目中,特别是UI库的开发,有太多人协同,每个人的code习惯也都不一样.并且UI库中

  • java求100之内的素数(质数)简单示例

    质数又称素数.一个大于1的自然数,如果除了1和它自身外,不能被其他自然数整除的数:否则称为合数.根据算术基本定理,每一个比1大的整数,要么本身是一个质数,要么可以写成一系列质数的乘积:而且如果不考虑这些质数在乘积中的顺序,那么写出来的形式是唯一的.下面是一个java求100之内的素数简单示例 复制代码 代码如下: public class test { public static void main(String[] args) {  int i,n,k=0;     for (n = 3; n

  • CI框架入门之MVC简单示例

    本文实例讲述了CI框架入门之MVC简单示例.分享给大家供大家参考,具体如下: 最简单的CI模型: 注意:模型需要用到数据库 配置文件在appcation/config.php 这里我们要用到数据库,需要将databases.php中的相关参数填写一下,具体不再赘述. 直接进入主题: MVC: 1.首先谈"M" 模型 CI中的模型存放在application/models文件夹里 命名规则是:类名_model.php 文件中只包含一个类: 如: class Nb_model extend

  • C#入门之窗体的简单用法实例

    本文实例讲述了C#窗体的简单用法.分享给大家供大家参考.具体分析如下: 今天简单的学习了一些控件和事件的运用.没有什么很全面的理论,所以今天就总结下所写的程序.一个简单的注册页面程序 注册页面程序   要求:   1. 修改所有的控件Name 属性 2. 登录事件   检测各个控件是否为空,如果是空  弹出注册失败    如果成功  则显示新窗体 并且 新窗体上面显示    "XXX你好! 欢迎来学习.Net" 走马灯形式 密码输入三次那么登录按钮不可用  3分钟之后可用 把注册信息的

  • jquery easyui DataGrid简单示例

    一.简单示例 HTML <table id="tbList" striped="true" rownumbers="true" fix="true" fitcolumns="true" title="标题" idfield="ID" checkbox="true" url="@Url.Action("ListData&qu

  • Vue.js展示AJAX数据简单示例讲解

    最近琢磨了一下vue.js,并在项目中进行了运用,感觉非常好用,强烈推荐. 当通过AJAX方式取回数据后,使用vue.js可以完美地按一定逻辑在页面上的展示数据,代码简单.优美.自然,而且便于与在用的页面框架集成. 感谢vue.js的作者,官方网站地址:https://cn.vuejs.org 举个小例子.注意,代码中使用jQuery.bootstrap.没有用过bootstrap不影响阅读本文. 一.返回的JSON数据示例 [ {"playid":"12113c676a4e

  • C++实现调用系统时间简单示例

    本文简述了基于VC++实现的调用系统时间的简单示例,这里只列出主要部分代码,供大家参考一下,具体如下: 首先要注意添加头文件: #include <Windows.h> 然后就简单了,这里只粘出主要用法如下: #ifdef _SECURITY SYSTEMTIME sysTime; ZeroMemory(&sysTime, sizeof(sysTime)); GetLocalTime(&sysTime); if (sysTime.wYear > _DURE_DATE_YE

  • Java 基础 byte[]与各种数据类型互相转换的简单示例

    Java 基础 byte[]与各种数据类型互相转换的简单示例 这里对byte[]类型对long,int,double,float,short,cahr,object,string类型相互转换的实例, 在socket开发过程中,通常需要将一些具体的值(这些值可能是各种Java类型)转化为byte[]类型,为此我总结了如下这个示例,贴出来,以便经常翻看: public class TestCase { /** * short到字节数组的转换. */ public static byte[] shor

  • C#判断数据类型的简单示例代码

    C#判断数据类型的简单示例代码: 复制代码 代码如下: int   i   =   5; Console.WriteLine( "i is an int? {0}",i.GetType()==typeof(int)); Console.WriteLine( "i is an int? {0}",typeof(int).IsInstanceOfType(i));

随机推荐