MFC
hello world 1
...
展开
-
MFC关于退出程序
GetMessage(&msg,hwnd,0,0),它是检索消息队列,直到检索到WM_QUIT返回FASLE结束循环,一般结束消息循环进程也就结束了。我到MSDN上查到GetMessage()这个函数,MSDN上的解释是这样的:hWnd [in] Handle to the window whose messages are to be retrieved. The window mu原创 2015-03-15 18:39:04 · 619 阅读 · 0 评论 -
MFC新线程控制进度条
几个要点:1.对话框中启动新线程。把句柄做参数传递。2.线程类中定义静态函数,也可以在对话框类中定义个全局函数。3.线程回调函数必须是静态,且以void*为参数。4.定义自定义消息,线程类发送,对话框类响应。CThread类// Thread.h#pragma once#include #include #define WM_USER_MSG转载 2015-10-19 14:29:21 · 1087 阅读 · 0 评论 -
MFC 模态及非模态对话框
方法一:模态对话框 资源视图--Dialog--右键--添加资源--新建--对话框--右键--添加类。例如:添加CMyNewDlg类,在所要调的代码中(按钮点击方法中),先加头文件#include "CMyNewDlg.h ",之后在按钮点击方法中: void COnclickDlg::OnBnClickedOk() { CMyNewDlg Dlg; Dlg.Do转载 2015-10-20 17:44:11 · 504 阅读 · 0 评论 -
利用CPrintDialog,打印文件——流程清晰
利用CPrintDialog,打印文件前段时间需要将日志信息通过打印机打印出来。http://www.cnblogs.com/jamesmile/archive/2010/04/15/1713003.html总结了一下其中的一些用法:1:用CPrintDialog 可以呼出窗口让用户选择打印机或者采用默认的打印机直接打印。 StartPage…..转载 2015-11-09 13:51:58 · 1867 阅读 · 0 评论 -
MFC对话框使用CPrintDialog实现打印,指定打印机、后台打印——贵在全面
http://blog.csdn.net/xjkstar/article/details/25828097对话框打印,网上一搜一大堆,基本分2类:A类: CPrintDialog.DoModal,然后在模态对话框里选打印机、打印配置;B类:GetPrinterDeviceDefaults,调用默认打印机。我的工作内容是理解以上2类后,再根据MSDN,实现MDF对话框后台指定转载 2015-11-09 13:54:37 · 2012 阅读 · 0 评论 -
MFC获取文件夹下所有文件的名字ListBox
临时用到,就写了一下,保存一下成果!基于List Box的界面显示文件名列表:运行效果图:具体实现主要是添加两个消息响应,一个BUTTON控件的,一个是ListBox控件的LBS_SELCHANGE消息消息响应;代码很简单,如下:void CAddMtpDlg::OnBnClickedBtnimportdata(){CFileDialog dlg(TRU原创 2015-09-22 16:20:26 · 2499 阅读 · 0 评论 -
MFC颜色对话框使用
可以使用CColorDialog打开选择如下颜色对话框其构造函数如下:CColorDialog( COLORREF clrInit = 0, //默认颜色,为空则为RGB(0,0,0)(黑色) DWORD dwFlags = 0, //介绍如下 CWnd* pParentWnd = NULL //父窗口);Flags:CC_AN转载 2015-10-14 17:24:47 · 1949 阅读 · 0 评论 -
温习MFC画图——附带源码
绘制任意线条:1、创建基于单文档工程:DrawCDrawView类中添加成员变量:CPoint m_ptOrigin;BOOL m_bDraw;2、CDrawView()中初始化:m_ptOrigin = point;m_bDraw = false;3、添加消息响应函数:WM_LBUTTONDOWN WM_LBUTTONUP WM_MOUSEMOVE原创 2015-10-13 17:10:52 · 3098 阅读 · 0 评论 -
MFC绘图知识大全
http://www.cppblog.com/bestcln/articles/83189.html转载 2015-10-14 18:03:24 · 8662 阅读 · 1 评论 -
MFC进度条编程控制-----总结的挺好
1. 进度条的主要功能进度条控制(Progress Control)主要用来进行数据读写、文件拷贝和磁盘格式等操作时的工作进度提示情况,如安装程序等,伴随工作进度的进展,进度条的矩形区域从左到右利用当前活动窗口标题条的颜色来不断填充。进度条控制在MFC类库中的封装类为CProgressCtrl,通常仅作为输出类控制,所以其操作主要是设置进度条的范围和当前位置,并不断地更新当前位置。进度条的转载 2015-10-15 17:48:17 · 5319 阅读 · 0 评论 -
WM_PAINT介绍及OnPaint()函数的作用原理
* WM_PAINT是窗口每次重绘都会产生的一个消息。* MFC中 OnPaint()是对这个消息的反应函数( mfc 的 CWnd::OnPaint() 没做什么,只是丢给系统处理,下面就是介绍它在系统中的处理流程) 关于 WM_PAINT 消息 系统会在多个不同的时机发送WM_PAINT消息:当第一次创建一个窗口时,当改变窗口的大小时,当把窗转载 2015-11-24 14:24:33 · 426 阅读 · 0 评论 -
MFC VC 双缓冲绘图基本原理与实现,详细解释
MFC做了一些时间了,不得不面对 的是在界面上画图的。当然你可以直接搜索到能用的代码,并且基本能满足要求。不过这样总不是学习的态度。本着学习分享的态度,现做一些基本的分析吧。在MSDN上知道,我们画图的对象都是窗口的DC,WINDOWS的绘图更新时,总是用背景色先填充这个区域,然后才是我们的绘图代码,这就是说,如果我们绘图的代码与背景色差别较大,不管我们更新速度多快,总会有转载 2015-11-25 10:03:00 · 637 阅读 · 0 评论 -
WM_PAINT介绍及OnPaint()函数的作用原理
* WM_PAINT是窗口每次重绘都会产生的一个消息。* MFC中 OnPaint()是对这个消息的反应函数( mfc 的 CWnd::OnPaint() 没做什么,只是丢给系统处理,下面就是介绍它在系统中的处理流程) 关于 WM_PAINT 消息 系统会在多个不同的时机发送WM_PAINT消息:当第一次创建一个窗口时,当改变窗口的大小时,当把窗转载 2015-12-29 10:31:44 · 322 阅读 · 0 评论 -
MFC的picture控件静态动态加载位图
所谓的静态有两种,一种是在picture属性中直接加载(type选择bitmap,image选择已加载到资源中的位图),另一种是通过编程加载,这两种的前提都要我们先把位图导入到资源中去,下面说下后一种。001:新建对话框工程,加入picture控件,关联变量为m_Bmp(类型为control),ID也要改一下,因为采用默认的,有重名,在关联变量的时候找不到picture项,再拖一个按钮上去,我转载 2015-12-29 17:46:40 · 997 阅读 · 0 评论 -
【Visual C++】一些开发心得与调试技巧
自己平时收集的一些技巧与心得,这里分享出来,普及一下知识。 1.如何在Release状态下进行调试 Project->Setting=>ProjectSetting对话框,选择Release状态。C/C++标签中的Category选General,Optimizations选Disable(Debug),Debut info选Program Database。在Li转载 2016-02-03 16:44:24 · 389 阅读 · 0 评论 -
MFC读写文件CStdioFile
CStdioFile类的用法(除此之外还有CFile,CArchive,CMemFile等等)。 MFC中使用CStdioFile类封装了C++运行时刻文件流的操作,流文件采用缓冲方式,支持文件模式和二进制模式文件操作,默认方式为文本模 式。 CStdioFile类从CFile类继承,具有如下三个构造函数: 1、CStdioFile():建立一个CStdioFile类的对象,但不转载 2016-03-29 11:14:02 · 1876 阅读 · 0 评论 -
MFC双缓冲绘图
MFC双缓冲绘图原理呢转一下别人的,重点在后面的画布类——MFC双缓冲绘图——————————————————————————BOOL CDataStructureView::OnEraseBkgnd(CDC* pDC) { CRect rc; CDC dcMem;原创 2016-04-15 17:16:50 · 727 阅读 · 0 评论 -
DrawText()
DrawText() http://www.cnblogs.com/wangyang-sust/archive/2012/08/18/2645918.html DrawText 该函数在指定的矩形里写入格式化的正文,根据指定的方法对正文格式化(扩展的制表符,字符对齐、折行等)。 int DrawText(HDC hDC, /转载 2015-09-15 16:54:29 · 4332 阅读 · 0 评论 -
用C++品尝Vista美味:界面的毛玻璃效果——涨姿势
用C++品尝Vista美味:界面的毛玻璃效果_www.knowsky.comhttp://www.knowsky.com/395561.html简介 本文将演示在基于Windows Vista的普通Windows应用程序及对话框程序中,如何利用C++来生成Aero毛玻璃效果,此处使用的是Beta 2版本的Vista及Windows SDK,也许在后续的版本中,一些API在转载 2015-09-15 13:55:03 · 1361 阅读 · 0 评论 -
MFC基础,MFC自绘控件学习总结.
http://blog.csdn.net/yue7603835/article/details/6649458http://blog.csdn.net/xiexievv/article/details/6596411我的机器环境是:Windows7旗舰版 Service Pack 1,Visual studio 20051).重绘某个控件时,强烈推荐使用子类化方法,比如想自绘B转载 2015-09-11 15:47:42 · 575 阅读 · 0 评论 -
《深入浅出MFC》学习笔记之一
-——《深入浅出MFC》学习笔记之一 http://www.gjwtech.com/vcandc/vc2shengruqianchumfc02.htm 龚建伟评:这篇学习笔记虽然不是系统的阐述某个问题,但读来让人感到收获不小,无论你是老鸟还是菜鸟,都会认同的。我希望XGM能够继续写下去,看了《深入浅出MFC》再来看这些笔记,也有温故知新之感俟杰转载 2015-05-13 15:40:42 · 748 阅读 · 0 评论 -
MFC控件的使用
MFC控件的使用MFC 对话框设计问题(控件的使用) 1.如何在对话框上添加图片利用MFC中的Picture Control控件,步骤如下:在资源管理其中添加一个位图文件;在对话框中添加一个Picture Control控件,并将该控件Type属性选择为Bitmap;随后,在Image属性中选择添加的位图资源ID2.如何在对话框中显示表格实现类似exce转载 2015-06-23 15:59:47 · 494 阅读 · 0 评论 -
VC++ combo box控件的使用
阅读本文,请将上下两部分结合起来看,效果更好!!!1.你在编辑状态下点那个控件的向下的三角形,就出冒出来一个可以调高度的东东。将高度调高,否则在执行时会不能显示下拉选项。2.为combo box添加选项,在编辑状态下选combo box控件的属性,选Data标签,在VS2010中,要使用英文状态下的";"进行隔开,这个Data标签只是让你在预览时看看;3.为combo box添转载 2015-07-09 14:36:45 · 8379 阅读 · 0 评论 -
VS2010中关于CSplitButton提示未定义的标识符
今天在VS2010中遇到这个问题:解决方法:项目-属性-字符集改成UNICODE的,然后就出来了;若不行,网友建议:加一个头文件#include原创 2015-07-02 18:03:52 · 2980 阅读 · 0 评论 -
socket编程——介绍CAsyncSocket类的用法
socket编程用法---- 随着计算机网络化的深入,计算机网络编程在程序设计的过程中变得日益重要。由于C++语言对底层操作的优越性,许多文章都曾经介绍过用VC++进行Socket编程的方法。但由于都是直接利用动态连接库wsock32.dll进行操作,实现比较繁琐。其实,VC++的MFC类库中提供了CAsyncSocket这样一个套接字类,用他来实现Socket编程,是非常方便的。转载 2015-07-25 23:07:15 · 4198 阅读 · 0 评论 -
基于MFC的socket编程(异步非阻塞通信)
对于许多初学者来说,网络通信程序的开发,普遍的一个现象就是觉得难以入手。许多概念,诸如:同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock)等,初学者往往迷惑不清,只知其所以而不知起所以然。 异步方式指的是发送方不等接收方响应,便接着发下个数据包的通信方式;而同步指发送方发出数据后,等收到接收方发回的响应,才发下一个数据包的通信方式。 阻塞套转载 2015-07-25 23:04:30 · 1056 阅读 · 0 评论 -
MFC多国语言——配置文件
MFC多国语言——配置文件 工作需要,本地化了一个英文版本的产品。 在网上查阅了若干资料,在此进行一个简单的整理。 在MFC程序中,实现多国语言的方式很多,我们选择的是使用配置文件的方法。 在通过配置文件方式实现多国语言功能时,主要的工作是: 1、将需要在界面上显示的文字保存到文件中。 2、在使用这些资源时,不是从rc文件中获取,而是从文转载 2015-08-12 10:10:10 · 1002 阅读 · 0 评论 -
VC获取本机IP、子网掩码、网关、计算广播地址等信息
VC获取本机IP、子网掩码、网关、计算广播地址等信息代码(通过读注册表)重在思路#pragma comment(lib, "ws2_32.lib")#include #include #include #include #include using namespace std;typedef struct tagAdapterInfo转载 2015-08-12 13:47:52 · 2698 阅读 · 0 评论 -
MFC自动获取网络地址函数实现----广播地址,网关,子网掩码
void CSetSignalBoxDlg::OnBnClickedButtonGetbroadcastaddr(){ //注释部分为另一种获取IP方式,可略过//char Name[255];//定义用于存放获得的主机名的变量 //char *IP;//定义IP地址变量 //CString strIP="";//PHOSTENT hostinfo;//if(g原创 2015-08-13 09:51:31 · 1434 阅读 · 0 评论 -
CString中Format函数与格式输入与输出
CString中Format函数与格式输入与输出Format是一个很常用,却又似乎很烦的方法,以下是它的完整概貌,以供大家查询之用: 格式化字符串forma("%d",12)意思是将一个整形的格式化的字符(我认为是保持其形状不变) 1).格式说明总是以%字符开始,以下是不同类型数据的格式方式%号后的说明: d输出带符号十进制数 o输出无符号八进制数 x输出无符号十转载 2015-08-13 15:05:43 · 615 阅读 · 0 评论 -
MFC编辑控件中改变字体大小
目前,在使用Edit控件输出文字时,英文字母不能很好的对齐,所以就想到要改变字体大小,改为等宽字体。MFC编辑框如何改变字体的大小方法一:步骤一:在Dlg类中增加一个类成员变量: CFont m_editFont;注意:这里Font对象必须是类成员变量,不能是局部变量,否则会出现只改变了光标的大小,而不能改变字体的大小。步骤二:在OnIn转载 2015-07-21 15:33:22 · 5315 阅读 · 0 评论 -
vc++ 读取EditBox中的十进制数,转化为int格式,再在编辑框中用十六进制显示
vc++ 读取EditBox中的十进制数,转化为int格式,再在编辑框中用十六进制显示虽然简单,但很实用![cpp] view plaincopyGetDlgItemText(IDC_EDIT1, firstedit); int n = atoi(firstedit); CString secondedit; seconde转载 2015-07-21 16:12:19 · 1721 阅读 · 0 评论 -
MFC编辑框输入内容与显示内容转为16进制数据——更正版
最近工作中用到向串口发送16进制命令,所以就需要将输入的内容转为16进制。由于要向串口发送16进制命令,所以我将命令存入unsigned char数组中。代码: char ncharGlobalCommandRes[9]={0xaa,0x55,0x77,0x70,0x07,0x00,0x00,0x00,0xed}; //串口命令 CString nstrResolution;原创 2015-07-22 15:57:53 · 14110 阅读 · 0 评论 -
定义入口点错误
今天运行程序,准备Release一下,结果报错:fatal error C1189: #error : Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]两种方案一、使用/M原创 2015-07-24 15:51:32 · 1006 阅读 · 0 评论 -
字符串分割整理-简单实用
急求VC++高手!!!MFC中如何把一个字符串按分隔符分割成字符串数组,再把字符串数组转化成整型数组?例如:定义字符串CString m_str1="123,789,654,339";把m_str1以“,”为分隔符分割成字符串数组CString m_str2[]={123,789,654,339};再把m_str2转换成:int num[]={123,789,654,3原创 2015-08-07 13:37:29 · 531 阅读 · 0 评论 -
MFC 画图
MFC 画图精华:Windows中负责图形输出的是GDI(即GraphicDeviceInterface,图形设备接口)。这是Windows与硬件无关的图形输出模式的体现。GDI建立在硬件抽象层(HAL)之上,屏蔽了不同输出设备之间的差异,从而为用户提供了一个统一的“标准输出设备”。但是,与DOS不同,Windows是多任务、进程独立的,每一个窗口都应该有一个独立的输出通道。这样,转载 2015-09-11 11:46:30 · 1003 阅读 · 0 评论 -
CPaintDC、CClientDC、CWindowDC和CMetaFileDC类的主要特点及区别
1、 设备环境(DC) (1)在Windows中,显示工作是基于设备环境的。所谓设备环境(DC)是一种Windows数据结构,该结构包含应用程序设备输出时所需要的信息。 (2)在使用任何绘图函数之前必须建立一个设备环境对象。 (3)在Visual C++ 6.0的MFC中提供了设备环境类CDC,它封装了绘图所需要的所有函数,其中包括了大多数的Windows A转载 2016-04-15 18:08:22 · 485 阅读 · 0 评论