VC/MFC
文章平均质量分 73
liufei_learning
这个作者很懒,什么都没留下…
展开
-
VC基本操作四十条
一、改变视图背景色: 在CView的OnDraw函数中添写如下一段程序代码: void CFileNameView::OnDraw(CDC* pDC) {CFileNameDoc* pDoc = GetDocument();ASSERT_VALID(pDoc);CRect rectClient;CBrush brushBkCol转载 2010-01-27 20:27:00 · 1742 阅读 · 3 评论 -
list control的用法(四)--virtual List
<br /> <br />最近做一个MFC 的项目,用list contral 的时候遇到一个问题,当大数据量显示的时候list contral在界面会卡掉,经过一番尝试最后才发现virtual list这个东西,简单使用,不多说了,下面就是具体的步骤:<br /> <br />最近做一个MFC 的项目,用list contral 的时候遇到一个问题,当大数据量显示的时候list contral在界面会卡掉,经过一番尝试最后才发现virtual list这个东西,简单使用,不多说了,下面就是具体的步骤:原创 2010-12-28 13:52:00 · 2340 阅读 · 0 评论 -
list control的用法(三)--virtual List
<br /> LVIF_TEXT The pszText member must be filled in.LVIF_IMAGE The iImage member must be filled in.LVIF_INDENT The iIndent member must be filled in.LVIF_PARAM The lParam member must be filled in.LVIF_STATE The state member must转载 2010-12-28 13:37:00 · 2752 阅读 · 0 评论 -
使用MFC的数组类
<br /><br />MFC的数组类支持的数组类似于C++中的常规数组,可以存放任何数据类型。C++的常规数组在使用前必须将其定义成能够容纳所有可能需要的元素,而MFC数组类创建的对象可以根据需要动态地增大或减小,数组的起始下标是0,而上限可以是固定的,也可以随着元素的增加而增加,数组在内存中的地址仍然是连续分配的。<br />MFC定义了数组模板类CArray,并针对各种常用变量类型定义了CByteArray,CWordArray,CUIntArray,CDWordArray,CStringArray,转载 2010-12-28 13:53:00 · 1004 阅读 · 0 评论 -
list control的用法(一)
<br /> <br />c++:list control的用法<br />ListControl列表控件可以看作是功能增强的ListBox,它提供了四种风格,而且可以同时显示一列的多中属性值。MFC中使用CListCtrl类来封装列表控件的各种操作。通过调用<br />BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );<br />创建一个窗口,dwStyle中可以使用以下一些列表控件的专用风格:<br />转载 2010-10-31 15:54:00 · 3445 阅读 · 0 评论 -
Picture control用法
<br /> <br /> <br />把Picture控件的Notify属性改为enable即可相应鼠标消息<br />方法1.先从最简单的开始,用picture 控件来实现.<br /> <br />步骤:<br /> <br />先在资源里Import一张图片,ID为IDB_BITMAP2<br /> <br />然后在对话框上添加一个picture控件,右键点击打开属性,<br /> <br />将type下拉框选择BITMAP,紧跟着下面就出现一个Image下拉框,<br /> <br />拉开就原创 2010-11-01 12:32:00 · 8221 阅读 · 0 评论 -
list control的用法(二)
1。先来介绍REPORT类型的 CListCtrl:首先使用下面的语句设置CListCtrl的style: DWORD SetExtendedStyle( DWORD dwNewStyle );其中 LVS_EX_CHECKBOXES 表 示添加CheckBox LVS_EX_FULLROWSELECT 表示选择整行 LVS_EX_GRIDLINES 表示添加表格线如果设置了LVS_EX_CHECKBOXES属性,则可以用 BOOL GetCheck( int nItem )转载 2010-10-31 16:00:00 · 3482 阅读 · 0 评论 -
Skin++ 使用unicode编码
<br />1.在skinPPWTL.h中//将strcpy_s(szResImageName,_MAX_FNAME,_T(""));修改为ZeroMemory(szResImageName, _MAX_FNAME);2.在skinPPWTL.h中//将SKINPPWTL_API BOOL skinppLoadSkin(TCHAR* szSkinFile,BOOL bFromIni = FALSE);修改为SKINPPWTL_API BOOL skinppLoadSkin(C原创 2010-10-26 15:03:00 · 1616 阅读 · 0 评论 -
MFC使用Skin++外观美化
Skin++的使用 (vs2008可行)一.使用皮肤将SkinPPWTL.lib 、skinppwtl.dll 、SkinPPWTL.h三个文件及相应皮肤(**.ssk)拷贝至工程文件夹下;一般还要将这些文件放在Debug文件夹下。1.在(VC7)"项目->属性->链接器->输入->附加依赖项"中加入SkinPPWTL.lib或在(VC6)"Project->Settings->Link->Object/library"中加入SkinPPWTL.lib2.在StdAfx.h文件中加入#include "Sk转载 2010-10-25 19:55:00 · 3306 阅读 · 0 评论 -
VC 基本操作
<br /><br />改变窗口大小和标题修改: <br />在Cmainframe中的precreatewindow中 <br /> cs.cx=600; <br />cs.cy=600; <br />cs.style=cs.style&~FWS_ADDTOTITLE; <br />cs.lpszName="jiaotong";<br /> <br />光标,背景 <br />在CMyview中的precreatewindow中 <br />cs.lpszClass=AfxRegister转载 2010-12-14 17:26:00 · 1448 阅读 · 0 评论 -
改变对话框背景颜色的方法
<br /><br />---- 方法一:调用CWinApp类的成员函数SetDialogBkColor来实现。 <br /> <br /> ---- 其中函数的第一个参数指定了背景颜色,第二个参数指定了文本颜色。 <br /> 下面的例子是将应用程序对话框设置为蓝色背景和红色文本,步骤如下: <br /> <br /> ---- ① 新建一个基于Dialog的MFC AppWizard应用程序ExampleDlg。 <br /> <br />转载 2010-12-14 15:00:00 · 982 阅读 · 0 评论 -
MFC 的消息机制
<br /> <br />MFC 的消息机制<br />众所周知,windows是基于消息驱动的,作好消息处理是WINDOWS编程的关键任务之一,用VC制作WINDOWS程式同样离不开消息的处理。 这就要求我们对 VC中消息的处理有一个比较清淅的认识。只有这样才可能在必要的时候亲自动手完成一些复杂的消息映射处理。<br />在MFC中消息是 通过一种的消息映射机制来处理的。其实质是一张消息及其处理函数的一一对应表以及分析处理这张表的应用框架内部的一些程序代码.这样的好处是可以避免像早 期的SDK编程一样需要转载 2010-10-22 18:59:00 · 1357 阅读 · 0 评论 -
windows控件消息和控件通知消息大全
<br /> <br />Edit Control Notification Codes <br />EN_SETFOCUS <br />EN_KILLFOCUS <br />EN_CHANGE <br />EN_UPDATE <br />EN_ERRSPACE <br />EN_MAXTEXT <br />EN_HSCROLL <br />EN_VSCROLL <br /转载 2010-10-22 18:56:00 · 1962 阅读 · 0 评论 -
深度解析VC中的消息
<br /> <br />消息是指什么?<br /> 消息系统对于一个win32程序来说十分重要,它是一个程序运行的动力源泉。一个消息,是系统定义的一个32位的值,他唯一的定义了一个事件,向 Windows发出一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows发送一个消息给应用程 序。<br /> 消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。例如,对于单击鼠标所产生的消息来说,这个记录中包含了单击鼠标时转载 2010-10-22 18:54:00 · 1088 阅读 · 1 评论 -
Xtreme Toolkit Pro v11.2.1 汉化全过程
写在前面的<br />本文曾在CSDN上首次发表,因内容有些遗漏,所以作了相应的补充,并对一些用词进行了调整,使之更加准确。现再次发表到博客园,欢迎博客园的朋友们多提意见。另外在这次修改中参考了网友红马天下的相关文章http://www.cnblogs.com/homer/archive/2008/04/22/1166105.html,在此表示感谢。同时也非常愿意与之交流XtremeToolkitPro使用心得。前言<br />XtremeToolkitPro作为VC++/MFC平台下目前最流行的GUI界面转载 2010-10-23 12:06:00 · 2504 阅读 · 0 评论 -
Xtreme.Toolkit.Pro 安装详解
<br /> <br />这个库在VC下是非常好用的,在好朋友的帮助下快速安装成功,这里做一下详细的步骤<br />1.先下载Codejock.Xtreme.Toolkit.Pro.v12.0.0这个版本的文件里面有注册码PWD:1200-MFC-TOOLKITPRO<br />2.安装的时候一路下一步<br />3.安装完以后会出一个新的配置窗口,这里你可以跟据需要是否选择UNICODE的版本<br />或者DLL 还是静态的LIB方式这里推荐LIB用LIB发布时不用带DLL了。<br />4.选择完成后转载 2010-10-23 12:04:00 · 4550 阅读 · 0 评论 -
VC++ Tab Control控件的使用
<br />1. 新建一个MFC工程, 取名MyTab, 选择Dialog based, 然后Finish.<br />2. 删除对话框上默认添加的三个控件. 添加Tab Control控件并在Property属性中设置ID为IDC_TABTEST 在More Styles里勾上Bottom. 调速尺寸使其布满整个对话框, 我这边Tab Control的尺寸最后为164X203. 在ClassWizard为其添加变量, 变量名为m_tab. 类型为CTabCtrl.<br />3. 在对话框的初始化函数On转载 2010-10-22 21:35:00 · 1050 阅读 · 0 评论 -
MFC改变static text颜色
<br /><br />1.打开资源视图。<br />2.双击打开STATIC所在的对话框。<br />3.修改STATIC的ID属性,这里假设为IDC_TEXT1。<br />4.为对话框添加类,假设为CMyDialog.<br />5.选择对话框,在属性面板上点击消息,并选择WM_CTLCOLOR。<br />6.在对话框对应类的CPP中会新增下面的代码:<br />HBRUSHDataSummaryDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT转载 2010-12-29 16:55:00 · 3419 阅读 · 0 评论 -
图表控件--MSChart(1)
<br /> <br />数据图表/报表技术<br />图表/报表是数据信息输出最常用的格式,在各类管理系统中具有重要的作用和地位。本章将通过数据报表设计器(Data Report Designer)、图表、直接编程打印、利用Microsoft Excel和Microsoft Word等设计多种格式的报表。这些报表格式是比较典型的报表形式,在实际开发中具有重要意义和作用。在本章中将介绍有图表/报表的知识。<br />27.1 图 表 技 术<br />在实际编程过程中,有时需要将查询统计出来的数据用以图转载 2010-11-07 17:43:00 · 4477 阅读 · 0 评论 -
图表控件--MSChart(2)
<br />碰到一个东西要用MSChart控件的,呵呵,这不就学了怎么用哈! void CMoreDMcode::OnCacluteDelta(int nRow) { m_Chart.SetRedraw(false); m_Chart.SetRow(1); for(int i=1;i<=64;i++) { m_Chart.GetDataGrid().SetData(i,1,nDelta[i-1],0); } CRgn rgn; m_Chart.GetUpdate转载 2010-11-07 17:51:00 · 4086 阅读 · 1 评论 -
Windows的消息驱动机制
<br /> <br />Windows的消息驱动机制<br />1、消息驱动与消息循环<br />“消息”是windows运行机制中一个基本而又重要的概念。消息是一个报告事件发生的通知,消息驱动是围绕消息的产生与处理展开的,并依靠消息循环机制来实现。<br />从程序设计的观点看,某条消息可被视为某个事件的发生,比如点击鼠标。事件即可以由用户引发,也可以由应用程序产生,当然Windows本身也能发出消息。Windows应用程序的消息来源有4种:输入消息,控制消息,系统消息,用户消息。<br />Windo转载 2011-05-05 13:01:00 · 1255 阅读 · 0 评论 -
CHECKBOX用法
<br /><br />勾选时...做某种算法<br />不勾选时做另一种算法<br />if (BST_CHECKED == IsDlgButtonChecked( IDC_CHECK1 ) )<br />{<br />// 勾选<br />}<br />else<br />{<br />}<br /> <br />IDC_CHECK1是CheckBox控件。<br /> <br />函数功能:该函数可以确定某个按钮控制是否有选中标志,或者三态按钮控制是否为灰色的、选中的、或两者都不是。<br /转载 2011-02-23 15:35:00 · 2836 阅读 · 0 评论 -
CTime类format的使用
<br /><br />The format argument consists of one or more codes; as in printf, the formatting codes are preceded by a percent sign (%). Characters that do not begin with % are copied unchanged to strDest. The LC_TIME category of the current locale af转载 2011-02-23 15:35:00 · 1017 阅读 · 0 评论 -
VS2008 SkinMagic 使用
<br />1、复制到工程目录下skinmagiclib.h,skinmagic.lib,skinmagic.dll (注:我用的是2.5.1.1版dll)2、在stdafx.h中加入头文件和库的引用,如下:#include "SkinMagicLib.h"#pragma comment(lib, "SkinMagic.lib")3初始化SkinMagic库:int __stdcall InitSkinMagicLib( HINSTANCE hInstance, LPCTSTR转载 2010-11-22 20:38:00 · 2414 阅读 · 5 评论 -
PNG32 透明问题(2)
<br /> <br />关于gif图片(或png8)杂边锯齿的问题<br />by zhangxinxu from http://www.zhangxinxu.com<br />本文地址:http://www.zhangxinxu.com/wordpress/?p=264<br />二、目录(单击跳转到相应位置)<br />1. gif图片产生杂边锯齿的原因<br /> 1.1 索引透明颜色与Alpha透明颜色<br /> 1.2 photoshop的半透明平滑处理<br /> 1.3 gif转载 2010-11-22 20:41:00 · 2117 阅读 · 0 评论 -
PNG32 透明问题(1)
<br /> <br />一. 索引透明,布尔透明,alpha透明<br />索引透明:fireworks中可以选择某一颜色作为透明输出;<br />布尔透明:只能为不透明或全透明;<br />alpha透明:有不透明,全透明和半透明。<br />二. PNG8, PNG24, PNG32<br />现在都提倡用PNG8,好处就不用多说了.但是fireworks和photoshop导出的PNG图片却有一些不同。<br />1. fireworks<br />(1. 可以导出布尔透明,alpha透明的P原创 2010-11-22 20:40:00 · 1315 阅读 · 0 评论 -
TeeChart(2)
<br /> <br />介绍<br />TeeChartPro是一款提供上百种2D和3D图形风格、40种数学和统计功能、加上无限制的轴和22种调色板组件供选择。提供上百种2D和3D图形风格、40种数学和统计功能、加上无限制的轴和22种调色板组件供您选择。提供上百种2D和3D图形风格、40种数学和统计功能、加上无限制的轴和22种调色板组件供选择,TeeChart还包括一个强大的、完整的编辑对话框,几乎可用于每个组件和子组件,允许你快速的设计复杂图表应用程序。图表编辑器通过TeeCommander组件进一转载 2011-01-13 17:42:00 · 1240 阅读 · 0 评论 -
TeeChart(1)
<br /> <br />一:TeeChart介绍<br />TeeChart Pro是一款提供上百种2D和3D图形风格、40种数学和统计功能、加上无限制的轴和22种调色板组件供选择。提供上百种2D和3D图形风格、40种数学和统计功能、加上无限制的轴和22种调色板组件供您选择。提供上百种2D和3D图形风格、40种数学和统计功能、加上无限制的轴和22种调色板组件供选择,TeeChart还包括一个强大的、完整的编辑对话框,几乎可用于每个组件和子组件,允许你快速的设计复杂图表应用程序。图表编辑器通过TeeComm转载 2011-01-13 17:40:00 · 1643 阅读 · 0 评论 -
MFC TIMER用法
<br /><br />一 SetTimer函数的用法 <br />1) 函数原型及变形<br />SetTimer这个API函数的原型 :<br />UINT_PTRSetTimer( <br />HWND hWnd, // 窗口句柄 <br />UINT_PTR nIDEvent, // 定时器ID,多个定时器时,可以通过该ID判断是哪个定时器 <br />UINT uElapse, // 时间间隔,单位为毫秒 <br />TIMERPROC lpTimerFunc // 回调函数 <br转载 2011-01-13 17:38:00 · 3120 阅读 · 0 评论 -
相对路径
<br /> <br />今天在论坛上看有人问关于playsound函数相对路径的问题,正好,我也不会,那就看一看吧,呵呵。看了帖子之后,我豁然开朗,哦,原来这就是相对路径啊。接着我编写了一个名为playsound.exe的小程序,在程序中调用123.wav这个文件。先说明一下playsound.exe的路径。<br />playsound.exe的路径D:/Backup/我的文档/C-Free/Projects/playsound/MinGW3.4.5<br />如果123.wav的路径为D:/Backu转载 2010-11-12 21:25:00 · 1548 阅读 · 0 评论 -
MFC-添加背景音乐(1) PlaySound函数应用
<br /> <br />// test2.cpp : Defines the entry point for the application.<br />//<br />#include "stdafx.h"<br />#include <mmsystem.h><br />int APIENTRY WinMain(HINSTANCE hInstance,<br /> HINSTANCE hPrevInstance,<br />转载 2010-11-12 21:19:00 · 6411 阅读 · 0 评论 -
MFC透明位图(2)--PNG的实现
<br /> <br />类CImage,头文件atlimage.h<br />1.显示背景透明的PNG图片<br />CImage m_Image;<br />m_Image.Load(图片路径);//装载图片<br />for(int i = 0; i < m_Image.GetWidth(); i++)<br />{<br /> for(int j = 0; j < m_Image.GetHeight(); j++)<br /> {<br /> unsigned char*转载 2010-11-12 21:33:00 · 2606 阅读 · 0 评论 -
MFC透明位图(1)--BMP的实现
<br /> <br />包含透明色的位图的绘制方法有多种,最简单的方法是调用现成的函数:TransparentBlt,也可以通过自己的代码实现类似TransparentBlt的功能,实现过程也有两种形式,一种是事先做一张掩码位图,另一种是动态生成掩码位图。本文将介绍动态生成掩码位图绘制具有透明区域位图的方法。<br /> <br />一、TransparentBlt 函数的使用<br /> <br />TransparentBlt 函数在Windows98/Windows2000以上版本运行,系统中需要包转载 2010-11-12 21:32:00 · 4794 阅读 · 0 评论 -
MFC-添加背景音乐(2)-封装了mciSendCommand的简单MCI类
<br />封装了mciSendCommand的简单MCI类2006-10-22 10:08前阵子写了篇mciSendCommand简介的文章,大家看得比较多,说明大家需要这方面的东西哈。今天有空写了个简单的MCI类给大家贴出来。这个类很简单,只实现了简单的文件打开、播放、暂停、继续、关闭几个功能,供大家学习研究哈。如果哪位高手把这个类扩展了也请给我一份哈,以备不时之需哈。这个类必须在MFC支持下才能使用,因为用了MFC 的CString。请在编译的时候链接上winmm.lib类的代码如下:转载 2010-11-12 21:21:00 · 2853 阅读 · 0 评论 -
图表控件--MSChart(3)不闪烁刷新
<br /> <br />Flicker free MSChart<br />By ShabuKC | 5 Oct 2003 | Unedited contribution<br />A simple way to stop Flickering in MSChart.<br /><br />Introduction<br />This solves the problem of Flickering while the Chart values are updated rapidly. <br />Usi转载 2010-11-09 19:00:00 · 3288 阅读 · 0 评论 -
Radio Button 控件
<br /><br /><br />1如何定义一组RadioButton<br /> <br />在Dialog上添加4个RadioButton,ID分别是IDC_RADIO1,IDC_RADIO2,IDC_RADIO3,IDC_RADIO4<br />首先设置一下Tab键顺序,菜单上"格式"-"Tab键顺序",或者Ctrl+D.<br />由小到大设置(利用鼠标点击控件设置).<br />设置Tab键顺序最小的RadioButton的Group的属性值为True<br />这4个Radio转载 2010-12-12 11:08:00 · 1058 阅读 · 0 评论 -
关于SelectObject的使用
<br /> 关于SelectObject的使用<br /><br />void CMy10View::OnDraw(CDC* pDC) <br />{ <br />pDC->MoveTo (10,10); <br />pDC->LineTo (110,10); <br />CPen newPen(PS_DASHDOTDOT,10,(COLORREF) 192); //红色的笔宽度为10 <br />CPen * pOldPen=pDC->SelectObject (&newPen); <br />//在将转载 2010-10-18 23:41:00 · 1420 阅读 · 0 评论 -
MFC中获得系统时间的方法
1.使用CTime类CString str; //获取系统时间CTime tm; tm=CTime::GetCurrentTime(); str=tm.Format("现在时间是%Y年%m月%d日 %X"); MessageBox(str,NULL,MB_OK);2: 得到系统时间日期(使用GetLocalTime)SYSTEMTIME st;CString strDate,strTime;GetLocalTime(&st);strDate.Format("%4d-%2d-%转载 2010-12-03 22:22:00 · 3279 阅读 · 0 评论 -
Windows Data Types
The data types supported by Windows are used to define function return values, function and message parameters, and structure members. They define the size and meaning of these elements. For more in转载 2010-04-03 14:22:00 · 1183 阅读 · 0 评论 -
VC中的0XCCCCCCCC
在VC Debug版本里,栈中分配的值都会先用0xCCCCCCCC来处理一下,所以大家在Debug模式下调试程序发现在引用0xCCCCCCCC这样的值,就说明在试图使用一个没有初始化的值。这就是在Debug模式下调试的好处之一,如果在Release模式下,系统就不会用0xCCCCCCCC来处理一下了。至于为什么选择0xCCCCCCCC大概是因为 端点中断int 3 对应的机器码就是转载 2010-04-18 11:00:00 · 2538 阅读 · 0 评论