
MFC
文章平均质量分 58
ljh0302
软件研发工程师
后端Java,前端Angular
展开
-
MSXML中的SelectNodes和SelectSingleNode
SelectSingleNode 和 SelectNodes 是IXMLDOMDocument接口的函数,分别可以得到指定节点或节点集合MFC中使用示例:在stdfx.h中引入动态连接库 MSXML.DLL#import 函数原型MSXML2::IXMLDOMNodePtr MSXML2::IXMLDOMNodePtr::selectSingleNode(_bstr_t q原创 2015-08-26 11:29:15 · 2406 阅读 · 0 评论 -
Mac地址和字符串之间的转换
[cpp] view plaincopystd::string MacToStr(UINT8 * pMac,const char chKen/* = ':'*/) { char szFormat[] = "%02X:%02X:%02X:%02X:%02X:%02X"; int nLen = strlen(szFormat);转载 2015-12-24 17:10:10 · 8532 阅读 · 1 评论 -
CDC双缓冲绘图
一、双缓冲实现过程如下: 1、在内存中创建与画布一致的缓冲区 BufferBmp=new Graphics::TBitmap(); BufferBmp->Canvas->Handle=CreateCompatibleDC(Canvas->Handle); BufferBmp->Width=Width;转载 2015-11-10 14:42:47 · 1878 阅读 · 0 评论 -
关于unicode模式下CString 转LPCSTR问题
原文地址:http://blog.sina.com.cn/s/blog_a2aaa60401011mxu.htmlCString str=_T("1234567890");LPCSTR lpstr=(LPCSTR)str.GetBuffer();这个时候,lpstr的值却为“1”,仅为str中的首个字符。找了许久,始终没有找到解决方案,最后想到一个方法:转载 2015-09-19 12:20:13 · 3531 阅读 · 0 评论 -
MFC右键菜单
原文档地址:http://wenku.baidu.com/view/f7fdc60a6c85ec3a87c2c5d1.html 源代码地址:http://download.youkuaiyun.com/detail/songliduo/4631557为什么想写右键菜单,其实MFC右键菜单并不难,但是比较恶心。在一次做项目的过程中使用了OnRButtonUp这个事件来触发右键菜单,可是有一原创 2015-09-16 15:29:23 · 649 阅读 · 0 评论 -
MFC六大核心机制之一MFC程序的初始化
原文地址:http://www.jizhuomi.com/software/267.html 很多做软件开发的人都有一种对事情刨根问底的精神,例如我们一直在用的MFC,很方便,不用学太多原理性的知识就可以做出各种窗口程序,但喜欢钻研的朋友肯定想知道,到底微软帮我们做了些什么,让我们在它的框架下可以简单的写程序。本文开始就跟大家分享一位同行前辈写的MFC核心机制分析(稍作整理),转载 2015-09-07 09:41:52 · 559 阅读 · 0 评论 -
WinPAI: FindWindow、FindWindowEx ---查找窗口
原文地址:http://www.cnblogs.com/del/archive/2008/02/28/1085432.html FindWindow( lpClassName, {窗口的类名} lpWindowName: PChar {窗口的标题}): HWND; {返回窗口的句柄; 失败返回 0}//FindWindowEx 比转载 2015-09-06 20:09:43 · 2914 阅读 · 0 评论 -
基于TCP协议实现服务器和客户端的通信程序
实习期间,项目要求学习MFC编程和SOCKET编程,先写了一个入门的小程序来熟悉一下。服务器的界面图:为了简化,将服务器的IP和Port固定为127.0.0.1和5000【启动】按钮用来启动服务器代码:void CServerDlg::OnBnClickedStartButton(){ // TODO: 在此添加控件通知处理程序代码 if(0 != WSASt原创 2015-08-20 16:06:26 · 8980 阅读 · 4 评论 -
MFC中CImage类的像素访问
在CImage类的像素访问MSDN的代码[cpp] view plaincopyCOLORREF pixel; int maxY = imgOriginal.GetHeight(), maxX = imgOriginal.GetWidth(); byte r,g,b,avg; for (int y=0; y转载 2015-09-09 16:04:28 · 1003 阅读 · 0 评论 -
MFC双缓冲
绘图的过程放在OnDraw或者OnPaint函数中,OnPaint在进行屏幕显示时调用OnDraw。作图时发生闪烁的原因:当窗口需要重绘时,首先用背景色清除显示区,然后调用OnPaint,短时间内背景色与显示图像交替出现,使得显示窗口看起来在闪烁。将背景刷设置为NULL,重绘图形不会闪烁,但是窗口的显示会混乱。解决方案:MFC双缓冲:把要显示的图形先在内存中绘制好,然后再一次性的将内存中的图形按照原创 2015-09-09 16:50:24 · 534 阅读 · 0 评论 -
CImage类的简介与使用
MSDN中关于CImage类的介绍:https://msdn.microsoft.com/zh-cn/library/bwea7by5.aspx转自:http://blog.sina.com.cn/s/blog_5da62ae00100pzo5.htmlCImage类的成员可分为连接与创建、输入与输出、位图类型与参数,以及图形绘制与位图块传送等4类。(1) 连接与创建Att转载 2015-09-09 16:31:18 · 823 阅读 · 0 评论 -
CFileDialog类应用详解
原文地址:http://blog.youkuaiyun.com/bxwang1/article/details/3220609构造函数原型:CFileDialog(BOOL bOpenFileDialog, LPCTSTR lpszDefExt = NULL, LPCTSTR lpszFileName = NULL, D转载 2015-08-18 15:28:27 · 791 阅读 · 0 评论 -
IP地址CString和DWORD转换
#pragma comment(lib,"ws2_32.lib") #include //将CString 型IP地址在IPAddressCtrl中显示 CString strIP="192.168.0.10"; DWORD dwIP; dwIP = inet_addr(strIP); unsigned char *pIP = (unsigned ch转载 2015-08-06 16:10:48 · 850 阅读 · 0 评论 -
Tab控件子主对话框发送消息
当子对话框的属性->style,选择的是popup时,可以直接使用GetParent()->SendMessage(WM_ADD_EVENT,a,b)而当子对话框的属性->style,选择的是child时,GetParent()并不能得到主对话框的句柄,所以使用该语句,无法发送消息给主对话框,应该使用下面的语句:HWND hwnd = AfxGetApp()->GetMainWnd()->转载 2015-08-17 15:59:17 · 946 阅读 · 0 评论 -
DWORD类型与16进制字符串之间的相互转换
MFC 中输入32位地址和数据的Edit控件关联的变量为DWORD m_Addr,m_Data,在控件中输入类似“0x4F0C”的地址或数据时,直接利用UpdateData(TRUE)不能获得DWORD 类型的m_Addr,m_Data因此只能使用GetDlgItemText(int nID,CString &cstr)来获得相关的CString类型1、16进制的字符串转换为DWORD原创 2015-08-17 15:13:41 · 11100 阅读 · 0 评论 -
线程中使用m_wndStatusBar.SetPaneText函数出错
在线程中使用m_wndStatusBar.SetPaneText函数,编译通过,运行出错,调试发现运行到该语句时报错!于是在网上查找资料发现:因为MFC是线程安全的,所以再线程中调用该函数更新状态栏会出错。于是使用API来实现:::SendMessageA(pDlg->m_wndStatusBar.m_hWnd,SB_SETTEXT,0,(LPARAM)TEXT("检测到GigE原创 2015-12-09 16:50:07 · 2180 阅读 · 0 评论