VC++
文章平均质量分 75
天蝎的耗子
一个爱学习的疯子
展开
-
C++标准库string类型的操作总结
总结一下C++中string的操作,来自〈C++ Primer〉第四版。1. string对象的定义和初始化: 1 string s1; //空串 2 string s2(s1); //将s2初始化为s1的一个副本 3 string s3("value"); //s3初始化并赋值 4 string s4(n,"c");转载 2012-04-10 10:42:50 · 1725 阅读 · 0 评论 -
ADO中_variant_t变量的使用与转换
// Convert.h: interface for the CConvert class. // ////////////////////////////////////////////////////////////////////// #if !defined(AFX_CONVERT_H__EC38F865_4607_4659_BAC8_AA6096C50EC7__INCLUDE原创 2012-05-07 19:21:55 · 3035 阅读 · 0 评论 -
windows消息参考大全
下是windows消息队列中会出现的所有的消息,在学习win32asm或者windows核心编程、win socket或者VC/VC++的其它的windows程序的时候会很有帮助的。WM_CREATE 应用程序创建一个窗口 WM_DESTROY一个窗口被销毁 WM_MOVE 移动一个窗口 WM_SIZE改变一个窗口的大小 WM_ACTIVATE一个窗口被激活或失去激活状态;原创 2012-05-28 18:42:02 · 516 阅读 · 0 评论 -
Message-Box Styles
Message_Box Types MB_ABORTRETRYIGNORE The message box contains three pushbuttons: Abort, Retry, and Ignore.MB_OK The message box contains one pushbutton: OK.MB_OKCANCEL The message b原创 2012-05-10 15:02:28 · 644 阅读 · 0 评论 -
MFC简单皮肤颜色绘制(SetDialogBkColor不再被支持,看 WM_CTLCOLOR消息如何百变控件颜色)
WM_CTLCOLOR消息用来完成对EDIT, STATIC, BUTTON等控件设置背景和字体颜色, 其用法如下:1.首先在自己需要设置界面的对话框上点击右键-->建立类向导-->加入WM_CTLCOLOR消息-->自动生成OnCtlColor()函数, 此函数可以对本对话框的控件的界面外观做修饰, 用法如下:将类向导产生的函数做如下修改: HBRUSH CDialogColor::原创 2012-05-09 15:13:07 · 5201 阅读 · 0 评论 -
LPCSTR与CString转换
1.LPCSTR是Win32和VC++所使用的一种字符串数据类型,L表示long,P表示指针,C表示常量,STR表示字符串。2.LPCSTR转化为CString:LPCSTR lpStr="test";CString str(lpStr);3.CString转化为LPCSTR:CString str("test");LPCSTR lpStr = (LPCSTR)s原创 2012-05-10 09:46:09 · 7571 阅读 · 0 评论 -
CreateParameter 方法 Type 属性 (ADO)
指示 Parameter、Field 或 Property 对象的操作类型或数据类型。设置和返回值设置或返回下列 DataTypeEnum 值之一。相应的 OLE DB 类型标识符在下表的说明栏的括号中给出。有关 OLE DB 数据类型的详细信息,请参阅第 10 章和《 OLE DB参考手册》的附录 A。常量说明adArray与其他类型一起加入逻原创 2012-05-10 15:12:38 · 4048 阅读 · 0 评论 -
在MFC程序中显示JPG/GIF图像
如果你是一个使用VB编程的程序员,要在程序中显示JPG或者GIF图像简直易如反掌,将图像控件拖到Form中,分分钟即可搞掂。但是C++程序员要显示同样的图形却没有那么轻松,那么是不是要自己编写JPG解压缩代码呢?当然不用那么复杂啦!本文将针对这个问题讨论如何在MFC中显示JPG或者GIF图像。 用VB写图像显示程序之所以如此轻松,完全是利用了琳琅满目的图像处理控件,把你想要做的事情都一一原创 2012-05-30 10:20:05 · 1204 阅读 · 1 评论 -
VC中控件字体与文本颜色的设置
设置字体函数原型: BOOL CreateFont( int nHeight, int nWidth, int nEscapement, int nOrientation, int nWeight, BYTE bItalic, BYTE bUnderline, BYTE cStrikeOut, BYTE nCharSet, BYTE nOutPrecision, BYTE nClipPr原创 2012-05-12 10:58:26 · 1068 阅读 · 0 评论 -
WM_CTLCOLOR和OnCtlColor消息的用法
WM_CTLCOLOR消息用来完成对EDIT、STATIC、BUTTON等控件设置背景和字体颜色,其用法如下:1.首先在自己需要设置界面的对话框上点击右键-->建立类向导-->加入WM_CTLCOLOR消息-->自动生成OnCtlColor()函数,此函数可以对本对话框的控件的界面外观做修饰,用法如下:将类向导产生的函数做如下修改: HBRUSH CDialogColor::OnCtl原创 2012-05-17 11:51:09 · 1157 阅读 · 0 评论 -
设置对话框、static和group的背景色和字体颜色
对话框背景色设置,重载OnPaint:void CMonitorDialog::OnPaint(){CPaintDC dc(this); // device context for painting// TODO: 在此处添加消息处理程序代码// 不为绘图消息调用 CDialog::OnPaint()/*CRect rect;GetClientRect(rect);原创 2012-05-18 00:09:34 · 7156 阅读 · 0 评论 -
GroupBox
CRect rect; CWnd* pWndStatic=GetDlgItem(IDC_STA_SEND); if(pWnd->GetDlgCtrlID()==IDC_STA_SEND && nCtlColor== CTLCOLOR_STATIC) { COLORREF backColor = RGB(255, 255, 182); pWndStatic原创 2012-05-18 00:37:30 · 833 阅读 · 0 评论 -
SQO2008配置管理工具服务显示远程过程调用失败
前两天,装了VS2012后,打开SQL2008配置管理工具,发现SQL服务名称里什么也没有,只有一个提示:(如图) 上网搜了,试了很多方法,像什么把windows\system32\wbem下的framedyn.dll复制到system32目录下,还有照一个老外说的,下什么更新补丁,都没用!!想重装SQL2008,结果运行安装程序,变成了英文版(以前装显示的是原创 2013-06-27 17:42:17 · 904 阅读 · 0 评论 -
VC读取Excel数据
现在对Excel的操作越来越流行,可能还有对表格的格式进行修改等复杂的操作,这里只说明读取Excel文件的方法(这里以2003为例)。 1. 首先要将excel类添加到工程中。在ClassWizard中,【Add Class】,在Excel的安装目录找到Excel.exe(Microsoft2003是Excel.exe;2007应该又独立的lib库,这个没有验证),添加原创 2013-07-04 16:37:09 · 1220 阅读 · 0 评论 -
文本无关的声纹识别验证
一、声纹识别简介声纹是指能惟一识别某人或某物的声音特征,是用电声学仪器显示的携带言语信息的声波频谱。虽然人的发音器官生理构造总的是相同的,但人的语言产生是人体语言中枢与发音器官之间一个复杂的生理物理过程,人在讲话时使用的器官——舌、牙齿、喉头、肺、鼻腔在尺寸和形态等方面,每两个人之间的差异会很大(见图2-1所示)所以任何两个人的声纹图谱都有差异,而对于每个人而言,从十几岁发育变声后直到五十原创 2013-09-16 11:23:57 · 3984 阅读 · 1 评论 -
CIPAddressCtrl控件的用法
CIPAddressCtrl控件的用法:1.通过Create函数手动创建一个IP控件.开始时我在OnInitDialog()函数中这样写的:CIPAddressCtrl IPAddress;UINT nID=101;IPAddress.Create(WS_CHILD |WS_VISIBLE ,CRect(20,20,300,43),this,nID);但运行之后看不到有IP原创 2012-05-07 18:13:09 · 722 阅读 · 0 评论 -
Unicode字符集和多字节字符集关系
Unicode字符集和多字节字符集关系在计算机中字符通常并不是保存为图像,每个字符都是使用一个编码来表示的,而每个字符究竟使用哪个编码代表,要取决于使用哪个字符集(charset)。在最初的时候,Internet上只有一种字符集——ANSI的ASCII字符集,它使用7 bits来表示一个字符,总共表示128个字符,其中包括了英文字母、数字、标点符号等常用字符。之后,又进行扩展,使用8原创 2012-04-19 09:48:06 · 27470 阅读 · 10 评论 -
LPSTR、LPWSTR、LPCSTR、LPCWSTR、LPTSTR、LPCTSTR的区分与转化
首先在编译程序时经常会遇到这种问题:错误 1 error C2664: “CWnd::MessageBoxW”: 不能将参数 1 从“const char [3]”转换为“LPCTSTR”1、觉得很烦,一般的做法就是不管三七二十一,在字符串前面加一个‘L’:如调用函数FUN(LPCTSTR str)时,不能 FUN("HELLO"); 而是FUN(L"HELLO");通常这样做转载 2012-04-10 10:13:29 · 1670 阅读 · 0 评论 -
CString、LPSTR、std::string、LPCSTR之间的转换
LPSTR WideChar2MBCS( const CString& strCS ){ const UINT wLen= strCS.GetLength()+1; UINT aLen= WideCharToMultiByte(CP_ACP,0,strCS,wLen,NULL,0,NULL,NULL); LPSTR lpa=newchar[aLen];转载 2012-04-10 10:28:48 · 10248 阅读 · 0 评论 -
VC 树形类(CTreeCtrl|CViewTree)
修改设置样式:m_treeCtrl.ModifyStyle(0,TVS_HASBUTTONS | TVS_LINESATROOT | TVS_HASLINES); 树形控件可以用于树形的结构,其中有一个根接点(Root)然后下面有许多子结点,而每个子结点上有允许有一个或多个或没有子结点。MFC中使用CTreeCtrl类来封装树形控件的各种操作。通过调用BO原创 2012-04-11 09:00:15 · 8477 阅读 · 0 评论 -
使用CMFCListCtrl控件时的排序方法
项目开发工具为VS2010,对于用惯了VC6的我来说,有些新特性摸起来真有些费神。这两天为了一个数据显示列表弄得云里雾里的。背景是这样的:1、要在界面中显示数据库中数据(表格形式),每列要有标题名。2、数据库中的一个字段可能要拆分称两列进行显示。3、显示的数据要能任意列进行排序,每列的数据可能有重复值。因此,我使用了“列表”控件。后来听说VS2010中有个CMFCListCtr原创 2012-04-24 16:57:39 · 1663 阅读 · 0 评论 -
Run-Time Check Failure #3 - The variable 'comstat' is being used without being initialized
方案1: 改变项目配置属性一种解决方案是改变基本运行时检查(changing the runtime checks in project settings):在菜单Project->Project properties-> C/C++ -> Code generation-> Basic Runtime checks --> change to 'Default',在中文版中是:项目-〉属转载 2012-04-13 12:27:11 · 24196 阅读 · 16 评论 -
vc 结束线程
在wtl工程中定义一个现成,如下:DWORD WINAPI ThreadFunc( LPVOID pParam ){if( g_pMainlg )g_pMainlg->DoEnumNetwork();return 0;}void CMainDlg::StartTreeThread(){DWORD dwThreadId;HANDLE hThrd = Cre原创 2012-04-13 13:57:11 · 2926 阅读 · 0 评论 -
MFC制作双缓冲无闪烁的字幕滚动条
最近一段时间由于项目需要,需要一个字幕滚动条,所以了解了一下双缓冲的绘图方法。1.闪烁产生原因首先,介绍一下为什么会产生闪烁。我们在绘图时收到WM_PAINT消息后,系统会调用默认的画刷来填充被Invalidate 的区域,这样由于时间差的原因,会产生闪烁的现象。2.双缓冲原理双缓冲使用内存缓冲区来解决由多重绘制操作造成的闪烁问题。当启用双缓冲时,所有绘制操作首先呈现到内存缓冲区,原创 2012-04-16 18:02:16 · 2242 阅读 · 0 评论 -
如何消除vc屏幕闪烁的方法
也许我们都碰到过这种情况,当你想重画某个窗口的时候,或你需要每隔一段时间要进行重画窗口,窗口会不停的闪烁。那么如何消除闪烁呢?借鉴了别人的经验,自己也总结一下,现将总结的几种方法介绍一下,供大家参考。1、将Invalidate()替换为InvalidateRect()。 因为Invalidate()会导致整个窗口的图象重画,需要的时间比较长,而InvalidateRect()仅仅重画R原创 2012-04-16 17:16:39 · 967 阅读 · 0 评论 -
关于使Visual Studio 2005/2008/2010开发的MFC程序具有XP风格的问题
当用Visual Studio 2005/2008创建MFC程序时,如果选择Unicode编码方式则程序自动具有XP控件风格;如果没有选择或选择多字符集编码方式,则需要如下操作:将下面的内容保存到一个文件名为***.manifest的文件中,放到res目录下,***可以使用你的程序的名称或者任意。name="Wiegand.Application" proces原创 2012-04-17 10:16:38 · 973 阅读 · 0 评论 -
树形控件 CTreeCtrl CViewTree
CTreeCtrl在三种不同情况下创建的方式1、如果要在对话框窗口上创建树形控件,你需要在对话框类中定义一个CTreeCtrl类型的成员变量。2、如果树形控件是一个子窗口,你可以使用CTreeCtrl::Create()来构建树形空间对象。3、如果你使用了CViewTree对象,那么你需要使用CViewTree::GetTreeCtrl()获得对树形控件的引用如果你想在你的控件原创 2012-05-01 02:23:24 · 4965 阅读 · 0 评论 -
CTreeCtrl
在VC++中改变CTreeCtrl子项Item字体和颜色http://lxspine.blog.hexun.com/8664035_d.htmlSetting color and font attribute of the item for CTreeCtrl in VC++.翻译Zafir Anjum 的文章Setting color and font attri原创 2012-05-01 11:56:05 · 2749 阅读 · 3 评论 -
双缓冲加重载onpaint,OnEraseBkgnd解决屏幕闪烁问题
近来发现用vc做ui真是一件非常痛苦的事情,微软有了C#这个新欢就不要vc这旧爱了.只能自己动手了.自己实现了按钮切换背景功能后,正暗自爽的我发现了一个很严重的问题.背景切换时总是先出现mfc自带的灰色难看界面才刷出我用form image控件载入的图片.上网google了很久.总算是解决我自己的问题.分三步走:第一, 在OnInitDialog中写入//-----------原创 2012-05-01 19:53:37 · 4305 阅读 · 0 评论 -
VC中如何将MDI的多个子窗体设置为不同的标题
在默认情况下,MFC自动将子窗口标题设为该子窗口所打开的文档标题。但实际上,子窗口标题与该子窗口标题所打开的文档标题并不是同一回事。我们可做如下实验: (利用ResourceView打开资源,修改String Table中的IDR_MAINFRAME的值为“vc编程”,使得主窗口标题变成“VC编程”。 (将BOOL CMDITITleDoc::OnNewDocument()函原创 2012-05-02 11:25:01 · 3830 阅读 · 0 评论 -
怎样用双缓冲办法解决窗口和控件闪烁?
本文主题,用双缓冲办法解决闪烁,以下转载基本上能解决,源代码可参考软件"飞鞋"-----------------------------------------------------------------------------------转载:http://blog.sina.com.cn/s/blog_48f93b530100jonm.html对于MFC程序员来说做UI开发是痛原创 2012-05-02 13:30:08 · 7371 阅读 · 2 评论 -
如何增量后 Visual C++ 中的每个生成的版本信息
您可以编写一个程序来修改该资源编译器 (.rc) 文件,而不是在此处使用所述的步骤。但是,RC 文件是 Visual C++ 的控制之下。Visual C++ 修改 RC 文件,在保存时,这可能会影响版本资源。在这一节中所述的方法可以应用于任何 Visual C++ 项目。此示例使用 Microsoft 基础类项目。创建新项目时使用 MFC (EXE) 应用程序向导,称它为我的项目。我原创 2013-12-25 15:29:36 · 1324 阅读 · 0 评论