- 博客(20)
- 收藏
- 关注
转载 Virtual Key Codes
The following table shows the symbolic constant names, hexadecimal values, and mouse or keyboard equivalents for the virtual-key codes used by the system. The codes are listed in numeric order.
2013-03-31 17:18:57 526
转载 PreTranslateMessage作用和使用方法
PreTranslateMessage作用和使用方法 PreTranslateMessage是消息在送给TranslateMessage函数之前被调用的,绝大多数本窗口的消息都要通过这里,比较常用,当需要在MFC之前处理某些消息时,常常要在这里添加代码. MFC消息控制流最具特色的地方是CWnd类的虚拟函数PreTranslateMessage(),通过重载这个函数
2013-03-31 17:12:41 744
转载 如何修改几种控件的颜色和字体
设置控件颜色的主要目的是为了解决控件文字背景色不透明的问题。当向一个有背景色的界面上放置控件后,由于控件文字的背景色与界面背景色不符,使文字背后留下难看的灰块。现在我定义了可设置背景色和前景色的控件,只要使控件背景色与界面背景色相同,问题就解决了。设置控件颜色和字体时必须重载该控件对应的类,在其中加入相关的颜色控制和字体函数。各种控件的做法完全相同,只是重载的类不一样。注:对于静态
2013-03-31 14:00:38 921
转载 MFC文件读写
计算机室如何管理自身所存放着的大量的信息的呢?windows的磁盘管理程序为我们提供了一套严密而又高效的信息组织形式--硬盘上的信息是以文件的形式被管理的。面向存储的文件技术什么是文件?计算机中,一篇文章、一幅图片、一个程序等都是以文件的形式存储在磁盘上的,每个文件都有一个文件名。计算机就是对文件按名存取的。文件名的格式如下:主文件名.扩展名。为什么要在程序中使用文件?
2013-03-30 14:38:42 640
转载 MFC播放声音文件
一.播放声音文件的简单方法 在VC++ 中的多媒体动态连接库中提供了一组与音频设备有关的函数。利用这些函数可以方便地播放声音。最简单的播放声音方法就是直接调用VC++中提供的声音播放函数BOOL sndPlaySound ( LPCSTR lpszSound,UINT fuSound ); 或BOOL PlaySound( LPCSTR lp
2013-03-27 20:20:09 743
转载 Invalidate() UpdateWindow()区别
Invalidate让客户区处于可以重画的状态,而UpdateWindow开始重画,但是它先判断客户区是否为空,不空UpdateWindow不执行,为空才执行重画。 Invalidate与UpdateWindow的区别如下:void Invalidate( BOOL bErase = TRUE ); 该函数的作用是使整个窗口客户区无效。窗口的客户区无效意味着需要重绘,例如,如果一个被其它
2013-03-25 22:42:50 552
转载 MFC启动和关闭线程
1、 启动线程:CWinThread* AfxBeginThread( 线程函数,this );2、通常导致线程终止的两种情况是:控制函数退出或不允许线程完成运行。如果字处理器使用后台打印线程,若成功完成打印,则控制函数将正常终止。但是,如果用户要取消打印,后台打印线程则不得不提前终止。本主题介绍如何实现每一种情况,以及在终止后如何获取线程的退出代码。(1)正常线程终止
2013-03-22 14:59:02 1523
转载 VC/MFC列表CListCtrl类的LVCOLUMN和LVITEM详解
列表视图控件(List Control)列表视图控件是一种非常常用的控件,在需要以报表形式显示数据时,列表控件通常是最好的选择,许多专用的数据报表控件,也是在它的基础上派生而来。与树视图类似,列表控件可以由多个子项目组成,并且支持大图标、小图标、列表和报表4种方式显示信息,如图1所示。图1 列表视图的4种显示方式列表视图包含一个项目列表,而其中每个项目由图标、项目名称和多个子项组成,每
2013-03-20 23:04:38 710
转载 MFC中定时器的使用
巧妙地使用定时器能达到意想不到的效果,写界面的时候能实现渐变,也能帮助多线程控制等我们知道,在VC的MFC中,已经为我们封装好了很多全面和强大的函数集,所以在MFC编程时,巧妙地调用MFC函数库可以为我们省去很多麻烦。其中定时器也可以在MFC程序中很好地利用。在MFC中和定时器相关的有三个函数:1.设置定时器(定义一个定时器的属性): SetTimer( UINT n
2013-03-20 22:42:14 2532 2
转载 vs2010 中添加 ActiveX Control Test Container工具
vs2010中的TSTCON( ActiveX Control Test Container )工具非自动安装,而是作为一个例程提供。所以应找到该例程,并编译:如vs2010安装在默认路径则1, 进入:C:\Program Files\Microsoft Visual Studio 10.0\Samples\1033,可找到VC2010Samples.zip文件,2, 将其
2013-03-19 15:29:31 542
转载 VC++ 菜单详解
1. 取消右键系统菜单在PreCreateWindow函数中改变设置样式:cs.style&=~WS_SYSMENUCREATESTRUCT的具体结构如下:typedef struct tagCREATESTRUCT { LPVOID lpCreateParams; HANDLE hInstance;//当前实例句柄 HMENU hMenu;
2013-03-15 13:15:04 1154
转载 VC如何获取对话框中控件的区域
GetWindowRect是取得窗口在屏幕坐标系下的RECT坐标(包括客户区和非客户区),这样可以得到窗口的大小和相对屏幕左上角(0,0)的位置。 GetClientRect取得窗口客户区(不包括非客户区)在客户区坐标系下的RECT坐标,可以得到窗口的大小,而不能得到相对屏幕的 位置,它的top和left都为0,right和botton是宽和高,因为这个矩阵是在客户区坐标系下(相对于
2013-03-14 22:47:44 1559
转载 UpdateData(TRUE)、UpdateData(FALSE)
UpdateData(TRUE)和UpdateData(FALSE)的区别当你使用了ClassWizard建立了控件和变量之间的联系后:当你修改了变量的值,而希望对话框控件更新显示,就应该在修改变量后调用UpdateData(FALSE);如果你希望知道用户在对话框中到底输入了什么,就应该在访问变量前调用UpdateData(TRUE)。1、UpdateData(true)
2013-03-14 21:42:31 749
转载 C与C++中定义结构体的不同方式
第三篇:struct和typedef struct分三块来讲述:1 首先:在C中定义一个结构体类型要用typedef:typedef struct Student{int a;}Stu;于是在声明变量的时候就可:Stu stu1;如果没有typedef就必须用struct Student stu1;来声明这里的Stu实际上就是struct Student
2013-03-11 16:16:14 579
转载 基于JRTPLIB库的RTP数据传输设计文档
一. 概述 此模块是在基于S3C2440的嵌入式开发板上实现对摄像头采集并经过H.264压缩过的数据的RTP传输,并在接收端PC上能正确接收的功能。 RTP即实时传输协议,用于Internet上针对多媒体数据流的传输。它通常使用UDP协议来传送数据,起初是为了“multicast”传输情况而设计的,目的是提供时间信息和保证流同步,不过现在也用于一对一的传输
2013-03-08 16:45:06 961 1
转载 JRTPLIB使用实例
这几天在看关于JRTPLIB方面的东西。在网上看了不少文章,其中有很大部分使用的JRTPLIB版本在3.0以下。在网上下载了一个JRTPLIB-3.7的库,发现里面的函数接口做了一些修改。现奉上一篇基于JRTPLIB-3.7的网络语音传送实例,希望有兴趣的朋友一起参详研究。
2013-03-08 16:43:10 674
转载 error C2440: 'static_cast' : cannot convert from 'void (__thiscall CMainFrame::* )(void)' to 'LRESU
不能转换void (_thiscall CMainFrame::*)(void)to LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)开发平台由VC6.0升级至VS2005,需要将原有的项目迁移,可能碰到类似错误:error C2440: 'static_cast' : cannot convert from 'void (__thiscall
2013-03-07 11:01:01 803
转载 CoCreateInstance
CoCreateInstance创建组件的最简单的方法是使用CoCreateInstance函数。在COM库中包含一个用于创建组件的名为CoCreateInstance的函数。此函数需要一个CLSID参数,在此基础上创建相应组件的一个实例,并返回此组件的某个接口。 CoCreateInstance 的声明HRESULT _stdcall CoCreateInstance(
2013-03-06 13:16:14 833
转载 TCHAR
TCHAR目录定义使用原理编辑本段定义TCHAR是通过define定义的字符串宏编辑本段使用原理因为C++支持两种字符串,即常规的ANSI编码(使用""包裹)和Unicode编码(使用L""包裹),这样对应的就有了两套字符串字符串处理函数,比如:strlen和wcslen,分别用于处理两种字符串微软将这两套字符
2013-03-05 22:31:20 648
转载 CCOMPTR用法
COM接口指针很危险,因为使用过程中需要每一个使用者都要严格并且正确的AddRef和Release,一旦出现问题,就会造成对象不能被正常释放,或者对象被重复删除,造成程序崩溃。所以使用COM接口,必须小心翼翼才行。但是,即使所有的代码中,都正确的AddRef和Release,也不一定能保证万无一失,例如:void SomeApp( IHello * pHello ){IHello*
2013-03-04 16:11:52 356
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人