认识VC++类向导的使用
VC++类向导很多时候用来添加消息处理函数;下面看两个例子;
开发环境VC6,Win7;
先新建一个单文档工程;
选择菜单中的 查看-建立类向导;
在类向导对话框中,消息映射选项卡,Class name,下拉选中应用程序类CTest1App;
在消息列表中选中InitInstance;看一下Member functions,当前应用程序类已经有InitInstance消息的处理函数InitInstance;
点 Edit Code 按钮;进入到该成员函数的代码;
将以下代码添加到 CTest1App::InitInstance() 函数的开始部分;
自
AfxEnableControlContainer();
之后,都是框架原有的代码;添加代码的功能是使程序只运行一个实例;
// 创建互斥量HANDLE m_hMutex = CreateMutex(NULL, FALSE, "test1");// 如果程序已经存在并且正在运行if(GetLastError()==ERROR_ALREADY_EXISTS){// 如果已有互斥量存在则释放句柄并复位互斥量CloseHandle(m_hMutex);m_hMutex=NULL;AfxMessageBox("您已经运行了本软件!");return FALSE;}
运行结果如图;
下面再看一个例子;
在主框架菜单中添加一个菜单 菜单测试;记住自动生成的菜单ID;
进入类向导;选中Class name为视类,CTest1View;对象ID中选中刚才添加的菜单ID;Messages中选中 COMMAND;
点击 Add Function...;
为该菜单自动生成一个成员函数名,可以更改;先不更改,点击OK;
自动进入视类中该函数的代码;然后添加一些代码;如下;
void CTest1View::OnMenuitem32771()
{
// TODO: Add your command handler code here
CDC * pDC=GetDC();
pDC->TextOut(50,50,"TEST1 !!!");
}
大括号中的2句代码是手动添加的;
运行程序,如图;
认识VC++类向导的使用相关推荐
- C++ MFC万能的类向导
类向导图解 难怪数MFC简单,只要你掌握了类向导,你基本就已经掌握了MFC了,毕竟布局和代码都是自动生成,再加上C++基础上手还是挺快的,剩下的就是多多练习了. 右键图标MENU 申明: 因为是自定义 ...
- VS2013类向导“异常来自 HRESULT:0x8CE0000B”错误解决方法
在做项目的时候不知道什么原因,打开类向导的时候突然出现"异常来自 HRESULT:0x8CE0000B"错误消息框,在网上百度GOOGLE了一大圈,只有一个在微软社区的问答还沾点边 ...
- VS2010运行类向导提示“未实现该方法或操作”
因为解决方案中包含有安装项目,将这些项目排除掉,即可打开类向导. 转载于:https://www.cnblogs.com/johnpher/p/3255339.html
- MFC类向导添加自定义消息未声明标识符的解决方法
MFC添加自定义消息步骤: 1.在要添加的窗口调出类向导, 这样会生成函数但是会提示 解决方法:在头文件里添加定义 #define WM_FileInformation WM_USER+2 如果还需要 ...
- vs2017开发ActiveX(主讲OCX)(十一)、类向导中MFC ActiveX添加方法、添加函数、添加变量、添加事件、添加属性、添加方法的区别
本文我们就来说说类向导中MFC ActiveX添加方法.添加函数.添加变量.添加事件.添加属性.添加方法的区别.这个问题曾经困扰过我. 此处是向CCreateOcxDemoApp类中添加成员变量,及成 ...
- MFC应用程序单文档及类向导的使用
我想不起来第一次看见你的时候,你穿的衣服是什么颜色,是晴天还是雨天,因为我从未想到,那天之后我会这么喜欢你... ---- 网易云热评 一.选择MFC应用程序 二.配置新项目 三.应用程序类型 ...
- VS2010类向导窗口太大
VS2010里面建立了一个对话框程序,打开对话框的类向导以后,发现这个对话框窗口太大了,确定,取消和应用三个按钮都在窗口里面都显示到最底部,用鼠标也点不到,而且还不能够调节窗口大小,打开项目属性窗口也 ...
- MFC 类向导 异常来自 HRESULT:0x8CE0000B
工具-选项-文本编辑器-C+±高级-重新创建数据库设为TRUE-关闭VS-重开VS-重新打开类向导!!!!
- VS2013类向导“异常来自 HRESULT:0x8CE0000B” 解决方法
本文参考了方法:http://blog.csdn.net/skyloveyue/article/details/52105912 并分析了该文中的http://connect.microsoft.co ...
最新文章
- phantomjs linux 中文不显示,linux 安装phantomJs 用于截图,处理中文乱码,和样式问题...
- Android 自定义WebView弹窗及屏蔽弹窗
- abap开发注释快捷键_让ABAP开发者更加轻松的若干快捷键
- 漫画:如何实现大整数相乘?(下)
- java设置框架位置_怎样设置label的位置啊?求指导
- Jsp+Ssh+Mysql实现的简单的企业物资信息管理系统
- 传统银行的战略转型之路,长沙银行迈向数据驱动提质年
- 软银领投Petuum 9300万美元融资,CMU邢波想让AI走进普通企业
- c# mysql datetime 判断为空 dbnull_转:SqlServer中的datetime类型的空值和c#中的DateTime的空值的研究...
- redis-pool go
- git log 查看自己修改的行数_Git 笔记 day2
- 切图具体需要切什么内容_什么是切图?网页制作中的切图是什么?
- IDEA中一直indexing问题
- ns3 学习资料和方法
- 达梦DMFLDR使用介绍
- 【USB接口】USB-Type-A B C 、Micro-USB、Mini-USB接口描述
- 通达信标记符号_通达信指标中赋值符号“:”、“=”、“:=”区别?
- java基础小记_Java基础学习小记--多态
- 店宝宝:淘宝特价版直面拼多多靠的是什么?
- while循环,do while循环 break-continu-label
热门文章
- AJAX-nodemon自动重启工具安装
- Use Standard Controllers
- 用技嘉Windows Image Tool给原版WIN7镜像注入USB3.0驱动
- java程序中,数据验证,如何判断输入的文本框中的值是不是int型?
- Windows 技术篇 - 远程桌面连接不保存密码、每次都要输入密码问题解决
- PyQt5 技术篇-调用颜色对话框(QColorDialog)获取颜色,调色板的调用。
- dosbox更新加载的文件夹
- SDUT—2054数据结构实验之链表九:双向链表 (基本建立)
- window的文件能在linux,在Linux和Window系统中生成任意大小文件
- QT,C++最好的调试工具(抽象定义上的工具)