
MFC
Andy20081251
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
mfc 使用flash控件注意事项
1.需要安装Adobe Flash Player (官网下载,或者360工具安装) 目前是32.0.0.238版本2.安装后64位系统可以在C:\Windows\SysWOW64\Macromed\Flash 下找到 Flash32_32_0_0_238.ocx3.注册ocx控件从开始菜单中打开运行对话框,并输入:regsvr32 C:\Windows\SysWOW64\Ma...原创 2019-08-29 17:24:54 · 546 阅读 · 0 评论 -
MFC隐藏和显示一个控件的方法
通常,我们在用MFC做界面的时候,控制控件的出现和隐藏很重要,同时这也体现出界面的友好和灵活性。那么,怎样在MFC中实现一个控件的隐藏和显示呢?这里,我就说一个我知道的简单方法。第一、先获得控件对象。这里用一个EditBox控件为例。 CEdit *edit = (CEdit*)GetDlgItem(IDC_EDIT_XXXX); 其中,IDC_转载 2015-01-13 17:51:53 · 936 阅读 · 0 评论 -
MoveWindow and SetWindowPos
MoveWindow只能设置窗口的大小和位置;SetWindowPos拥有MoveWindow的全部功能之外,还可以设置窗口的层叠关系(如,把指定的窗口放在所有窗口的最上层--alwayson top就可以用这个函数、或者把指定的窗口放在另一个窗口的下层,等等)。没有什么优缺点可言,只是功能上的大小有别。你完全可以不用MoveWindow,而只用SetWindowPos;但是,在只要设置窗口大转载 2015-01-13 17:50:53 · 790 阅读 · 0 评论 -
mfc按键显示不同状态背景
方法一:VC中自带了CBitmapButton类,原创 2014-11-19 15:53:19 · 1435 阅读 · 0 评论 -
如何让窗口最大化 并让控件跟随变化
让窗口最大化有2种方法一,原创 2014-06-19 19:36:29 · 2097 阅读 · 0 评论 -
fatal error C1853: '*.pch' is not a precompiled header file created with this compiler
fatal error C1853: 'Release/ChatBaseDL.pch' is not a precompiled header file created with this compiler这个错误的解决方法很简单,有人说把Debug里的文件删掉,但是没有解决我的问题,后来在论坛里看到只需在菜单下选择Build--->点击Rebuild All,我的问题就是这么解决的,仅供参考原创 2014-06-13 14:42:24 · 1328 阅读 · 0 评论 -
从一个MFC工程移植对话框类到另一个MFC工程
今天碰到模块移植问题了,自己做的对话框类(继承于CDialog)要移植到目标工程中.在网上搜了几个帖子发现都说的很生涩.问了我们的技术总监之后总算解决这个问题了. 问题:把一个MFC SDI工程中的一个对话框资源和类拷贝到另一个MFC SDI中. 1.在VC6中打开老的工程,在工作区Resource标签页中选中Dialog文件夹下的资源文件(就是双击后会出现编辑转载 2014-04-22 15:29:58 · 949 阅读 · 0 评论 -
CListCtrl控件主要事件及LVN_ITEMCHANGED消息和鼠标双击列表项事件的处理
LVN_BEGINDRAG 鼠标左键正在被触发以便进行拖放操作(当鼠标左键开始拖拽列表视图控件中的项目时产生)LVN_BEGINRDRAG 鼠标右键正在被触发以便进行拖放操作(当鼠标右键开始拖拽列表视图控件中的项目时产生)LVN_BEGINLABELEDIT 开始编辑项的文本LVN_COLUMNCLICK 单击列(当鼠标单击列表视图控件列标题时产生)NM_CLICK 当鼠标单击列表转载 2014-04-22 10:10:27 · 1096 阅读 · 0 评论 -
CTreeCtrl 和 CListCtrl 控件(VC_MFC)
Tree Control 控件(MSDN 链接)说明:树形控件是用于构造树形的结构,其中有一个根接点(Root)然后下面有许多子结点,而每个子结点上有允许有一个或多个或没有子结点.在树形控件中每一个结点都有一个句柄(HTREEITEM),同时添加结点时必须提供该结点的父结点句柄(其中根Root结点只有一个,既不可以添加也不可以删除), MFC 中使用 CTreeCtrl 类来封装树形控件的转载 2014-04-21 14:29:37 · 1851 阅读 · 0 评论 -
MFC中ComboBox控件的使用
MFC ComboBox一、入门篇ComboBox (组合框)控件很简单,可以节省空间。从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的。用户可以从一个预先定义的列表里选择一个选项,同时也可以直接在文本框里面输入文本。下面的例子简要说明如何利用 MFC CComboBox Class来操作字符串列表。1、定义控件对应变量假定已经创建了转载 2014-12-11 17:19:00 · 1584 阅读 · 0 评论 -
给对话框添加菜单 工具栏 状态栏简易方法
先建立一个基于Dialog 的程序,我给他起了个名字叫:DlgMenuToolbar。一、如何往基于Dialog的程序添加菜单[1.1] 先添加菜单(IDR_MENU1)资源,并加上需要的菜单项。[1.2] 编辑对话框资源IDD_DLGMENUTOOLBAR_DIALOG的属性,在属性对话框中选择IDR_MENU1即可。[1.3] 假如您不希望在对话框属性中直接设置转载 2014-12-11 16:02:53 · 889 阅读 · 0 评论 -
关闭窗体后,后台还有残留进程
1.程序中有while(1)循环2.程序中有没退出的线程原创 2019-08-08 22:07:49 · 4216 阅读 · 0 评论 -
MFC添加析构函数声明和定义的具体方法
1.头文件// 构造public: CUCTplatformDlg(CWnd* pParent = NULL); // 标准构造函数 ~CUCTplatformDlg();2.cpp中CUCTplatformDlg::~CUCTplatformDlg(){}原创 2019-08-08 22:05:29 · 2151 阅读 · 1 评论 -
mfc flash
Flash动画在许多领域中有着举足轻重的作用。如在网页中嵌入flash,可以得到一些意想不到的效果,学习MFC的我们就想,该如何给自己的程序添加Flash文件呢?编程环境:VC++6.0+windows7-64bit+支持activeX控件具体步骤:打开VC++6.0,新建MFC工程,如下图点击OK,选择基于对话框的,如下图Finish->OK右键对话框窗...转载 2019-05-23 20:50:56 · 291 阅读 · 0 评论 -
MFC添加gif动画
MFC添加gif动画显示gif动画,这里用到CPictureEx类库,从网上能找到,下面一步一步来实现显示gif动画。1、创建一个对话框,在对话框上添加一个图片控制和一个文控件,效果如下图:2、图中的灰色块就是图片控件,要修改它的属性才会变成灰块,修改了两个属性,如下图:3、选中图片控件,Ctrl + 双击,给它添加成员变量:// CStatic m_gifCtrl;...转载 2019-05-23 20:49:25 · 1280 阅读 · 0 评论 -
IDC_MSCOMM控件向下位机发送十六进制指令
下载串口控件: 链接:http://pan.baidu.com/s/1geD2AUf 密码:yfxo 压缩包包含四个文件:MSCOMM.SRG、MSCOMM32.DEP、MSCOMM32.oca、mscomm32.ocx; 解压后拷贝到: C:\Windows\System32(WIN7、Win8、Win10系统); C:\WINDOWS\system32(XP系统)...转载 2018-08-08 16:11:06 · 1491 阅读 · 1 评论 -
WIN7重启后修改的注册表被还原
一般win7系统都是自动默认光驱的工作模式为 DMA 模式!我在win7下改成PIO模式就能读了!右键我的电脑--设备管理器--IDE ATA/ATAPI--找到光驱的次要IDE通道(WIN7显示是英文 ATA Channel 0或者是1 )--右键ATA Channel 0--属性--高级设置--把 启用DMA 前面的勾去掉!--确定--重启---搞定!原创 2018-02-07 15:36:50 · 9037 阅读 · 1 评论 -
对话框中设置静态文本框字体及颜色
1、添加对话框类声明中字体和颜色变量[cpp] view plain copypublic: CFont m_myFont; // 字体对象 COLORREF m_myColor; // 颜色对象 2、在对话框初始化函数OnInitDialog()中对字体和颜色进行初始化[cpp]转载 2016-01-30 15:19:17 · 2602 阅读 · 0 评论 -
TRACE()的用法总结
TRACE()宏一般是用在mfc中的,用于将调试信息输出到vs的输出窗口中(这是关键), 这在使用vs作为开发工具的时候,是非常方便的。 然而在开发一般c++程序时,却貌似无法获得这样的便利,其实只要经过几个步骤同样可以实现:一:#include //此头文件包含ATLTRACE宏,而其实MFC做的就是#define TRACE ATLTRACE二:使转载 2015-07-23 16:42:24 · 1543 阅读 · 0 评论 -
设置对话框打开时焦点位置
有两种方法:第一:在对话框上,设计时将EDIT的Tab Order顺序设为第一个,这样默认的焦点就是EDIT 。第二:在对话框的初始化函数OnInitDialog()中使用成员函数SetFocus()GetDlgItem(IDC_EDIT1)->SetFocus();注意:要将OnInitDialog()的return TRUE;改为return FALSE;原创 2014-04-21 14:17:46 · 1094 阅读 · 0 评论 -
为edit control控件添加EN_CHANGE事件
.h// Generated message map functions//{{AFX_MSG(CTest22Dlg)virtual BOOL OnInitDialog();afx_msg void OnSysCommand(UINT nID, LPARAM lParam);afx_msg void OnPaint();afx_msg HCURSOR OnQueryDrag原创 2014-04-21 14:23:25 · 11470 阅读 · 0 评论 -
LoadString()函数
int LoadString(HINSTANCE hInstance,//应用程序实例句柄UINT uID,//资源IDLPTSTR lpBuffer,//存放字符串的缓冲区int nBufferMax//缓冲区大小)作用:先在资源中加入字符串资源(不管是字符串还是窗口还是按钮),都有一个名字,比如IDC_BUTTON1然后用这个函数把这个名字作为参数,就可以取出资源中转载 2014-04-03 11:54:04 · 13588 阅读 · 0 评论 -
VS2010下Cannot find or open the PDB file
“camerads.exe”: 已加载“C:\Windows\System32\opencv_highgui248d.dll”,Cannot find or open the PDB file“camerads.exe”: 已加载“C:\Windows\System32\user32.dll”,Cannot find or open the PDB file“camerads.exe”:原创 2014-03-11 09:42:11 · 2384 阅读 · 2 评论 -
使用VFW在windows下编程控制摄像头(1)
以下内容来源网络,感谢原作者。Microsoft® Video for Windows® (VFW) 提供的函数可以让应用程序去处理视频数据。 VFW 在16位Windows的时候就被引入了。它的许多重要功能已经被DirectX取代了。 要获得更多的信息,你可以参考DirectX 的文档。下面讲介绍VFW的视频捕获:3.视频捕获你可以使用windows的AVICap类轻松地完成转载 2014-03-05 14:35:22 · 2259 阅读 · 0 评论 -
VFW视频采集方案
2.2 VFW视频采集方案VFW是Microsoft于1992年推出的数字视频软件包,它不依赖于专用的硬件设备,提供了通用的数字视频开发方案。VFW主要由AVICap.dll、MSVideo.dll、MCIAvi.drv、AVIFile.dll、vfw32.lib等库文件组成,这些库提供了相关视频、音频、AVI文件的函数,本节将介绍如何利用这些函数进行视频采集。2.2.1 开发流程分析转载 2014-03-05 14:31:52 · 1503 阅读 · 0 评论 -
SendMessage()
SendMessage的基本结构如下:SendMessage( HWND hWnd, //消息传递的目标窗口或线程的句柄。 UINT Msg, //消息类别(这里可以是一些系统消息,也可以是自己定义,下文具体介绍,) WPARAM wParam, //参数1 (WPARAM 其实是与UINT是同种类型的, //在vc编译器中右键有个“转到WPARAM的定义转载 2014-03-05 12:04:44 · 1136 阅读 · 0 评论 -
使用VFW在windows下编程控制摄像头(2)
3.2使用视频捕获3.2.1创建捕获窗体 下面的例子通过使用capCreateCaptureWindow函数来创建一个捕获窗体hWndC = capCreateCaptureWindow ( (LPSTR) "My Capture Window", //如果是Pop-up窗口的窗口名称 WS_CHILD | WS_VISIBLE,转载 2014-03-05 14:46:02 · 1696 阅读 · 0 评论 -
GetSafeHdc()
GetDlgItem(ID) //通过资源ID获取对话框内控件的指针CDC*pDC=GetDlgItem(ID)->GetDC(); //获取某控件的设备绘图指针HDC hDC=pDC->GetSafeHdc(); //获取该DC指针的句柄(一般用于api函数使用)GetDlgItem(ID)->GetClientRect(&rect);// 获取控件的坐标范围原创 2014-03-03 16:56:05 · 1773 阅读 · 0 评论 -
DrawImage()
Image和Bitmap类概述GDI+的Image类封装了对BMP、GIF、JPEG、PNG、TIFF、WMF(Windows元文件)和EMF(增强WMF)图像文件的调入、格式转换以及简单处理的功能。而Bitmap是从Image类继承的一个图像类,它封装了Windows位图操作的常用功能。例如,Bitmap::SetPixel和Bitmap::GetPixel分别用来对位图进行读写像素操作转载 2014-03-03 17:01:44 · 909 阅读 · 0 评论 -
GetDC()
函数功能:该函数检索一指定窗口的客户区域或整个屏幕的显示设备上下文环境的句柄,以后可以在GDI函数中使用该句柄来在设备上下文环境中绘图。GetDCEx函数是GetDC的一个扩展,它能使应用程序更多地控制在客户区域内如何或是否发生剪切。函数原型:HDC GetDC(HWND hWnd);参数:hWnd:设备上下文环境被检索的窗口的句柄,如果该值为NULL,GetDC则检索整个屏幕的设转载 2014-03-03 15:57:44 · 2157 阅读 · 0 评论 -
CWnd 类
CObject└CCmdTarget └CWndCWnd类提供了微软基础类库中所有窗口类的基本功能。CWnd对象与Windows的窗口不同,但是两者有紧密联系。CWnd对象是由CWnd的构造函数和析构函数创建或销毁的。另一方面,Windows的窗口是Windows的一种内部数据结构,它是由CWnd的Create成员函数创建的,而由CWnd的虚拟转载 2014-03-11 15:57:05 · 770 阅读 · 0 评论 -
CWnd指针和HWnd
HWND是Windows系统中对所有窗口的一种标识,即窗口句柄。这是一个SDK概念。 CWnd是MFC类库中所有窗口类的基类。微软在MFC中将所有窗口的通用操作都封装到了这个类中,如:ShowWindow等等,同时它也封装了窗口句柄即m_hWnd成员。由HWnd得到CWnd*:CWnd wnd;HWnd hWnd;wnd.Attach(hWnd);通常一个窗口资转载 2014-03-11 16:02:02 · 689 阅读 · 0 评论 -
AfxBeginThread的介绍/基本用法
AfxBeginThread用户界面线程和工作者线程都是由AfxBeginThread创建的。现在,考察该函数:MFC提供了两个重载版的AfxBeginThread,一个用于用户界面线程,另一个用于工作者线程,分别有如下的原型和过程:用户界面线程的AfxBeginThread 用户界面线程的AfxBeginThread的原型如下:CWinThread* AFXAPI AfxBe转载 2014-03-20 14:16:11 · 627 阅读 · 0 评论 -
GetWindowText()
函数功能该函数将指定窗口的标题条文本(如果存在)拷贝到一个缓存区内。如果指定的窗口是一个控件,则拷贝控件的文本。但是,GetWindowText不能接收其他应用程序中控件的文本。函数原型:Int GetWindowText(HWND hWnd,LPTSTR lpString,Int nMaxCount);hWnd:带文本的窗口或控件的句柄。IpString:指向接收文本的缓冲区的指原创 2014-03-20 14:00:43 · 2282 阅读 · 0 评论 -
CComboBox下的GetCurSel()
在类CComboBox下的GetCurSel定义如下: CComboBox::GetCurSel int GetCursel( ) const; 返回值: 返回组合框中列表框中当前选中的项的下标。如果没有选中项,则返回CB_ERR。 说明: 本函数用于MFC编程时,取得组合框中当前选中的项的下标。 参考例子: void CDlgDlg::OnButt原创 2014-04-01 17:07:43 · 6018 阅读 · 0 评论 -
CCombobox使用大全
一、如何添加/删除Combo Box内容1. 在Combo Box控件属性的Data标签里面添加,一行表示Combo Box下拉列表中的一行。换行用ctrl+回车。2. 在程序初始化时动态添加 如: //控件内容初始化 CString strTemp;((CComboBox*)GetDlgItem(IDC_COMBO_CF))->ResetContent();//消除转载 2014-04-01 17:06:58 · 790 阅读 · 0 评论 -
MoveWindow()
MoveWindow()就是移动窗口位置(也可用来改变大小)。用法如下:BOOL MoveWindow(HWND hWnd, // handle to window int X, // horizontal position int Y, // vertical position int nWidth, // width原创 2014-04-01 16:24:50 · 1294 阅读 · 0 评论 -
MFC中树控件CTreeCtrl的用法
树形控件可以用于树形的结构,其中有一个根接点(Root)然后下面有许多子结点,而每个子结点上有允许有一个或多个或没有子结点。MFC中使用CTreeCtrl类来封装树形控件的各种操作。通过调用BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );创建一个窗口,dwStyle中可以使用以下一些树形控件的转载 2014-04-01 16:45:47 · 1139 阅读 · 0 评论 -
CString.Format的详细用法
在MFC程序中,使用CString来处理字符串是一个很不错的选择。CString既可以处理Unicode标准的字符串,也可以处理ANSI标准的字符串。CString的Format方法给我们进行字符串的转换带来了很大的方便,比如常见的int、float和double这些数字类型转换为CString字符串只需一行代码就可以实现。 先看看Format用于转换的格式字符: %c转载 2014-03-20 16:54:23 · 732 阅读 · 0 评论 -
树形控件TreeCtrl关联的MFC中的类:CTreeCtrl
1、插入结点:InsertItem2、获取与设置结点的文本:GetItemText、SetItemText3、删除某个结点:DeleteItem4、删除所有结点:DeleteAllItems5、收起与展开结点:Expand6、获取与设置选择结点:GetSelectedItem、SelectItem7、获取与设置虚线的颜色:GetLineColor、SetLineColor转载 2014-04-15 12:25:45 · 3097 阅读 · 0 评论