mfc】的更多相关文章

由于需要将MFC程序在其它电脑上运行,所以需要将动态链接的MFC改成静态链接,本以为很简单,没想到链接的时候出现下面的链接错误: uafxcw.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) already defined in LIBCMT.lib(new.obj) uafxcw.lib(afxmem.obj) : error LNK2005: &q…
第一次用博客,第一篇随笔,就写今天遇到的一个问题吧. 在VS2008的MFC对话框程序,窗口成员变量的声明顺序与其析构顺序相反,即,先声明的变量后析构,后声明的变量先析构.未在其他模式下测试. class A { public: A() { MessageBox(NULL,"A 构造", "A", MB_OK); } ~A() { MessageBox(NULL,"A 析构", "A", MB_OK);//并不会显示对话框 }…
1. 微软基础类库(英语:Microsoft Foundation Classes,简称MFC)是一个微软公司提供的类库(class libraries),以C++类的形式封装了Windows API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量.其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类.    2. MFC中最重要的封装是对Win32 API的封装,因此,理解Windows Object和MFC Object (C++对象,一个C++…
上一篇实现了在MFC的窗体内显示图片,本篇介绍如何在MFC窗体内实时显示摄像头的影像. 要实现的功能是点击一个“开始”按钮,可以显示影像,再点击“停止”按钮,可以停止显示. 因为实时显示影像需要在一个循环里执行,为了在显示影像的同时还可以干别的(比如,点击“停止”按钮),这里需要用到多线程,即显示影像的代码放到子线程中,与主线程并发执行. 重点已经说清楚了,下面是开发步骤: 1.先把Halcon中实时显示的程序搞定 2.Halcon代码导出为C++代码 3.建立MFC工程 4.在MFC中添加Ha…
本文仅用于学习交流,商业用途请支持正版!转载请注明:http://www.cnblogs.com/mxbs/p/6231104.html 打开VS2010,依次打开File – New – Project,弹出New Project对话框.选择Visual C ++下的MFC,接着选择MFC Application项,即创建一个MFC应用程序.输入项目名称Test和解决方案名称MFC,OK. 弹出向导对话框: 下一步,选择单文档应用程序类型,支持文档/视类结构,项目类型选择MFC,可视类型和颜色…
本文仅用于学习交流,商业用途请支持正版!转载请注明:http://www.cnblogs.com/mxbs/p/6216464.html MFC画线功能要点有二:其一,鼠标按下时记录初始位置为线的起始端点,其二,利用不同的方法实现画线.下面着重学习总结画线功能实现方法. 在OnLButtonDown函数中记录起始端点,CPoint m_ptOrigin = point; 在OnLButtonUp函数中实现画线.方法如下: 画线方法一:利用SDK全局函数实现视图窗口画线功能 //获取设备描述表 H…
---此仅供用于学习交流,切勿用于商业用途,转载请注明http://www.cnblogs.com/mxbs/p/6213404.html. 利用VS2010创建一个单文档标准MFC工程,工程名为Draw,运行如图所示: 下面主要用来讲解函数和变量添加方法,以此弄明白MFC消息映射机制,接着实现一个简单的画线功能. 右击工程名,选择Class Wizard,在Project项选择工程名Draw(此为要处理的工程),在Class name项选择CDrawView(此为添加函数的类,此处表示要在视图…
MFC中view类主要处理显示视图,doc类处理文档,mainframe主要为整个窗口的和工程的设置管理.由此,VTK与MFC联合编程时,需要主要的是数据操作,以及显示要很好的与MFC中的结构结合,做到MVC分离的要求和规范,视图-模型和控制一定要处理开来,尤其是大工程的处理时,才能不混乱.…
>------ 已启动生成: 项目: OSGtest, 配置: Debug Win32 ------1>正在编译...1>AddScene.cpp1>main.cpp1>c:\program files\microsoft visual studio 8\vc\atlmfc\include\afx.h(24) : fatal error C1189: #error : Building MFC application with /MD[d] (CRT dll version)…
1.#include指令  包含指定的文件,最基本的最熟悉的指令,编程中不得不用,包含库文件用双尖括号,包含自定义头文件用双引号. 2.#define指令   预定义,通常用它来定义常量(包括无参量与带参量),以及用来实现那些"表面似和善.背后一长串"的宏,它本身并不在编译过程中进行,而是在预处理过程就已经完成了. 对于一个频繁使用的短小函数,在C语言中用宏定义,C++用inline. 3.#typedef指令 常用来定义一个标识符及关键字的别名它是语言编译过程的一部分,但它并不实际分…
MFC自带的滑动条的样子是这样的. 比较难看,所以需要重绘下,重绘后的样子是这样的. 代码如下: CustomSliderCtr.h #pragma once // CCustomSliderCtr class CCustomSliderCtr : public CSliderCtrl { DECLARE_DYNAMIC(CCustomSliderCtr) public: CCustomSliderCtr(); virtual ~CCustomSliderCtr(); protected: af…
很多玩游戏的人都知道一般游戏客户端程序是不允许双开的,就是说在同一游戏在启动的时候,是无法打开多个窗口.很多其他软件如酷狗播放器等也是这样.如果把打开的窗口最小化,这时重新启动程序,最小化的窗口会被显示,而不是重新开一个窗口.    今天突然想把我自己以前做的音乐播放器, 也加这么一个功能.查了点资料,主要用到了FindWindow这个函数.    原型如下: HWND FindWindow ( LPCSTR lpClassName, //输入窗口的类名,其实需要是注册过的类名才行,否则是要报错…
我们发现想改变对话框的背景颜色是很简单的,但是对话框的背景颜色改变了后,我们发现按钮的颜色没有改变,如下图. 这样做出来的对话框看起来,不是很自然,我们也想把按钮的颜色改变一下.这就用到了按钮的重绘.      按钮的重绘,主要原理是:一把按钮的重绘属性激活,而覆写DrawItem方法.     新建一个MFC类CCustButton类,继承CButton类.    主要代码如下:CustomButton.h class CCustomButton : public CButton { DECL…
想在对话框里,显示几个字是很简单的,只要用静态文本的输出就可以了.然而有时候我们需要显示特效的字,我们希望显示的文字就像Word里的艺术字一样,看起来美观.这时我们可以重写CStatic类.用DrawItem方法重绘.     首先,我们想要激活CStatic控件的自绘属性,这样DrawItem才能有效.我们发现用激活CButton自绘属性的方法那样来激活 CStatic控件的自绘属性是不行的.他们的激活方式是不一样的.    不用说先新建一个MFC类叫CCustomStatic类并继承于CSt…
<?xml version="1.0" encoding="utf-8"?> <Cases> <case> <No>001</No> <CopyFile src="C:\test.txt" dest="D:\test.txt"></CopyFile> </case> <case> <No>002</No…
附件下载:http://files.cnblogs.com/mengdejun/print.zip void CPrintView::OnPrepareDC(CDC* pDC, CPrintInfo* pInfo) { // TODO: Add your specialized code here and/or call the base class //设置打印环境坐标转换 pDC->SetMapMode(MM_ANISOTROPIC); int screenwidth_real=GetSys…
界面布局 起初,计算机的交互是通过输入的代码进行的, 慢慢的有了图形之后, 就开始了图形界面的交互. 目前来说还有语音交互, 视频交互等多媒体的交互. 不管哪一种交互, 最终在计算机的角度都是信号的输入和信号的输出.计算机只明白01这样的二进制的信号. Qt界面布局 对于Qt来说, Qt专门有布局系统Layout Management, 布局系统里面包含了各种各样的布局类, 适用于多种多样的布局需求, 基本有:QBoxLayout, QButtonLayout, QFormLayout, QGr…
Qt鼠标提示分析说明 关于鼠标停留在控件上面,显示提示内容的方法. 对于Qt来说, Qt的某一个控件类, 如果属于GUI的, 那么这个控件类会有一个setToolTip(QString text)的方法. 顾名思义, 这个方法就是设置鼠标停留显示内容的.也可能一开始, 我就接触的Qt, 觉得这个方法很人性化. 感觉也是非常符合设计常理的. MFC鼠标提示分析说明 可是,当我了解到MFC的时候, MFC框架却是提供了一个专门的CToolTipCtrl类, 来统一管理鼠标的提示.按照MFC的思想,…
    虽然duilib自带在MFC中使用duilib的Demo,但只是MFC窗口和duilib窗口不重叠的情况.如果要在MFC窗口中嵌入duilib控件,或者在duilib控件中嵌入MFC的控件的话,就没有Demo可以看了,其实Alberl开始也不知道怎么办,看了下ActiveXUI控件,这个就是结合HWND的,但是由于接触duilib不久,所以一时无法看懂ActiveXUI到底是怎么将win32的HWND画上去的,只好在群里问啦,多谢铅笔群的Troy大神指导:     当时解决完之后上传了代…
本文总结来源出自鸡啄米,感谢鸡啄米.来源:http://www.jizhuomi.com/software/232.html 定时器简介 定时器,可以帮助开发者或者用户定时完成某项任务.在使用定时器时,我们可以给系统传入一个时间间隔数据,然后系统就会在每个此时间间隔后触发定时处理程序,实现周期性的自动操作.例如,我们可以在数据采集系统中,为定时器设置定时采集时间间隔为1个小时,那么每隔1个小时系统就会采集一次数据,这样就可以在无人操作的情况下准确的进行操作.  MFC定时器 VS2010编程中,…
上一篇介绍了MFC调用Halcon功能的简单例子,在这个例子中,点击按钮会弹出一个窗口显示图片,但是这样显示并不美观,而且...于是我决定把显示窗口做在MFC的窗体内部. 具体的方案是:使用一个Picture Control 控件,调用Halcon中的OpenWindow函数,将其参数中的父窗口设为Picture Control 的句柄,就可以在控件内显示我们的照片了,同时要注意缩放一下图片以适应控件大小. OpenWindow OpenWindow这个函数的用法可以在Halcon的帮助中找到,…
刚刚学校mfc的人都会遇到这样一个问题(比如我),在照做书做一个mfc程序,给控件新增变量时变量类型错了,但是变量名对了,然后想要加个正确的时候提示"已经存在该对象",然后就傻了,不知道该怎么删除这个错误的变量. 开发工具提供了增加变量的功能但是并没有删除的功能,所以如果想要删除某个错误的变量就要手动去代码中找到该变量,然后手动删除.下面说具体方法. 新增一个变量这个变量存在于两个位置,一个是头文件中项目名+Dlg.h文件,另一个是源文件中项目名+Dlg.cpp文件,比如我的项目名是a…
==================================声明================================== 本文版权归作者所有 未经作者授权 请勿转载 保留法律追究的权利 本文原创,已获得转载授权的,必须在正文中显要地注明作者和出处,并保证文章(包括本声明)的完整性. 被授权人不可再次授权第三方. 未经作者授权请勿修改(包括本声明),保留法律追究的权利. 未经作者授权请勿用于学术性引用. 未经作者授权请勿用于商业出版.商业印刷.商业引用以及其他商业用途.    …
==================================声明================================== 本文原创,转载在正文中显要的注明作者和出处,并保证文章的完整性. 未经作者同意请勿修改(包括本声明),保留法律追究的权利. 未经作者同意请勿用于学术性引用. 未经作者同意请勿用于商业出版.商业印刷.商业引用. 本文不定期修正完善,为保证内容正确,建议移步原文处阅读. 本文链接:http://www.cnblogs.com/wlsandwho/p/43883…
=================================版权声明================================= 版权声明:原创文章 禁止转载  请通过右侧公告中的“联系邮箱(wlsandwho@foxmail.com)”联系我 勿用于学术性引用. 勿用于商业出版.商业印刷.商业引用以及其他商业用途. 本文不定期修正完善. 本文链接:http://www.cnblogs.com/wlsandwho/p/5476590.html 耻辱墙:http://www.cnblo…
=================================版权声明================================= 版权声明:原创文章 谢绝转载  请通过右侧公告中的“联系邮箱(wlsandwho@foxmail.com)”联系我 勿用于学术性引用. 勿用于商业出版.商业印刷.商业引用以及其他商业用途. 本文不定期修正完善. 本文链接:http://www.cnblogs.com/wlsandwho/p/4899846.html 耻辱墙:http://www.cnblo…
工欲善其事,必先利其器,VC开发MFC Windows程序,Visual C++或Visual Studio是必须的,恩,这里都给你总结好了,拿去吧:VC/MFC开发必备Visual C++.Visual Studio.MSDN等下载汇总,甭客气~  啊?还没有开始学C++?那你先学习C++语言基础吧,C/C++语言基础学习资料及视频教程请看这里. 史无前例的网络最全最强C/C++资料索引: C/C++编程语言学习资料尽收眼底 电子书+视频教程 VC++/MFC(VC6)开发技术精品学习资料下载…
近期在忙一个小项目(和同学一起搞的),在这里客户要求不但读写txt,而且可以读写excel文件,这里本以为很简单,结果...废话少说,过程如下: 笔者环境:win7 64+VS2012+Office2013+MFC. 说明:读写excel文件,通常包括1.ODBC数据库实现;2.通过解析Excel表格文件;3.通过OLE/COM的几种实现方法.本文主要研究通过OLE/COM实现对Excel表格的操作. 步骤: 1.新建MFC对话框.注意勾选自动化,否则后面加入不了需要的库,导致启动服务失败等错误…
之前做过佳能相机和位移平台的额二次开发,当时遇到一个棘手的问题,就是位移平台如何知道相机已经拍完照了,或者相机如何知道位移平台已经运行到指定位置,当时为了方便采用了定时器来定时检测位移平台的位置,结果在后续的工作中引起了各种意想不到的错误.其实用户自定义消息之前了解过,由于之前编程一直没用到过,所以没去深入研究,主要也是自己偷懒怕麻烦.偷懒这个坏习惯必须要改,就像这次的相机开发一样,遇到问题没有去解决而采取回避方式,最终给自己带来了更大的麻烦.其实用户自定义消息并不是一件特别麻烦的事情. 在MF…
记得用MFC做了一个图像自动修复软件,当时没有多线程操作这一概念,由于图像修复算法比较复杂,因此,当执行图像修复时,程序就像卡死了似得而不能做其他操作.其实MFC对这种情况有一种很好地解决方案,那就是采用多线程编程技术.以图像修复算法为例,由于其本身需要耗费大量时间,因此我们可以单独开一个线程让他执行修复而不影响主程序的操作. 关于线程的一些概念,以及在VS2013下的实例: MFC中有两类线程,分别称之为工作者线程和用户界面线程.二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的…