随笔分类 - VC++.net
摘要:Xtrme toolkit,BCGControlBar,SkinMagic,AppFace,Skin++,Uskin++,SYGUI,LibUIDK,GuiToolkit,GardenUI等等,除了后两种一个是开源,一个是免费的外,其余的都是收费的。The Ultimate Toolboxhttp:...
阅读全文
摘要:电脑硬盘E盘下,建文件夹“test”,"test"下建立子文件夹“file”,"file"下建子文件夹“data”,电脑资源管理器显示目录 E:\test\file\data当前 路径 E:\test\file=============================================...
阅读全文
摘要:在编写程序的时候,我们经常要用到#pragma指令来设定编译器的状态或者是指示编译器完成一些特定的动作.下面介绍了一下该指令的一些常用参数,希望对大家有所帮助!一. message 参数。message它能够在编译信息输出窗口中输出相应的信息,这对于源代码信息的控制是非常重要的。其使用方法为:#pr...
阅读全文
摘要:VC++中几种字符标志的解释LPSTR = char * LPCSTR = const char * LPWSTR = wchar_t * LPCWSTR = const wchar_t * LPOLESTR = OLECHAR * = BSTR = LPWSTR(Win32) LPCOLESTR ...
阅读全文
摘要:(一)UpdateAllViews() 与Invalidate()的区别UpdateAllViews()是在DOC/VIEW结构中,当一个视图的数据改变后,通知所有视图作相应的改变,和重画毫无关系。Invalidate()是使窗口无效,使系统向其发WM_PAINT消息,使的程序的OnPaint被调用重画客户区。而UpdateAllViews()是文档与视之间的联系,调用从它会使程序与此文档相关的所有视的UpdateView被调用至于是否重画以及怎么画是由各视的UpdateView来决定的。Invalidate()是Cwnd的成员函数,与DOC-VIEW无关;UpdateAllViews是CDo
阅读全文
摘要:1. void Invalidate( BOOL bErase = TRUE );该函数的作用是使整个窗口客户区无效。窗口的客户区无效意味着需要重绘,例如,如果一个被其它窗口遮住的窗口变成了前台窗口,那么原来被遮住的部分就是无效的,需要重绘。这时Windows会在应用程序的消息队列中放置WM_PAINT消息。MFC为窗口类提供了WM_PAINT的消息处理函数OnPaint,OnPaint负责重绘窗口。视图类有一些例外,在视图类的OnPaint函数中调用了OnDraw函数,实际的重绘工作由OnDraw来完成。参数bErase为TRUE时,重绘区域内的背景将被擦除,否则,背景将保持不变。Inval
阅读全文
摘要:当我们想得到一个窗口对象(CWnd的派生对象)指针的句柄(HWND)时,最安全的方法是使用GetSafeHwnd()函数,通过下面的例子来看其理由: CWnd *pwnd = FindWindow(“ExploreWClass”,NULL); //希望找到资源管理器 HWND hwnd = pwnd->m_hwnd; //得到它的HWND 这样的代码当开始得到的pwnd为空的时候就会出现一个“General protection error”,并关闭应用程序,因为一般不能对一个NULL指针访问其成员,如果用下面的代码: CWnd *pwnd = FindWindow(“Explor...
阅读全文
摘要:DeleteDC该函数删除指定的设备上下文环境(DC)。原型:BOOL DeleteDC(HDChdc);参数:hdc:设备上下文环境的句柄。返回值: 成功,返回非零值;失败,返回零。调用GetLastError获取扩展错误信息。说明: 如果一个设备上下文环境的句柄是通过调用GetDC函数得到的,那么应用程序不能删除该设备上下文环境,它应该调用ReleaseDC函数来释放该设备上下文环境。ReleaseDC函数释放设备上下文环境(DC)供其他应用程序使用。函数的效果与设备上下文环境类型有关。原型:int ReleaseDC(HWNDhWnd, HDChdc);参数:hWnd:指向要释放的设备上
阅读全文
摘要:1.CString 转 char*int m_ID(0);CString name;name.Format(_T("bookUC%d.txt"),m_ID);std::wstring _name=name;_bstr_t t = _name.c_str();char* pchar = (char*)...
阅读全文
摘要:1.初识Visual Leak Detector灵活自由是C/C++语言的一大特色,而这也为C/C++程序员出了一个难题。当程序越来越复杂时,内存的管理也会变得越加复杂,稍有不慎就会出现内存问题。内存泄漏是最常见的内存问题之一。内存泄漏如果不是很严重,在短时间内对程序不会有太大的影响,这也使得内存泄漏问题有很强的隐蔽性,不容易被发现。然而不管内存泄漏多么轻微,当程序长时间运行时,其破坏力是惊人的,从性能下降到内存耗尽,甚至会影响到其他程序的正常运行。另外内存问题的一个共同特点是,内存问题本身并不会有很明显的现象,当有异常现象出现时已时过境迁,其现场已非出现问题时的现场了,这给调试内存问题带来了
阅读全文
摘要:这是一个老生常谈的话题,但还是有时候会漏洞一些设置。总结一些,总共需要三个地方设置,分别是1)c\c++-> General->Debug Information Format. 2) c\c++-> Optimization->optimization 3)link-> debuging-> General debug infor.转自:http://hi.baidu.com/liyy011/item/33d42b0cc9d634ed359902ea
阅读全文
摘要:对于VS2008的初次使用者来说,常会遇到的编译问题时,Debug版本运行正常,但在Release版本则不稳定或无法运行。以下是对Debug版本与Release版本本质区别的分析:一、Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。Debug 和 Release 的真正秘密,在于一组编译选项。下面列出了分别针对二者的选项(当然除此之外还有其他一些,如/Fd /Fo,但区别并不重要,通常他们也不会引起 Release 版错误,在此不讨论)Debu
阅读全文
摘要:1 /* 2 * 微秒级计时器,用来统计程序运行时间 3 * http://blog.csdn.net/hoya5121/article/details/3778487#comments 4 * //整理 [10/16/2013 Duan Yihao] 5 */ 6 7 #pragma once 8 9 #include "stdafx.h" 10 11 12 ////////////////////////////////////////////////////////////////////////// 13 class timer 14 {...
阅读全文
摘要:1 //myTimer.h 2 3 // [10/16/2013 Duan Yihao] 4 5 #pragma once 6 7 #include "StdAfx.h" 8 9 ////////////////////////////////////////////////////////////////////////// 10 class myTimer 11 { 12 13 public: 14 myTimer(void); 15 ~myTimer(void); 16 17 public: 18 void start(void)...
阅读全文
摘要:1 1.第一段代码 2 #include 3 using namespace std; 4 class ClxBase{ 5 public: 6 ClxBase() {}; 7 ~ClxBase() {cout DoSomething();19 delete p;20 return 0;21 }22 运行结果:23 Do something in class ClxDerived! 24 Output from the destructor of class ClxDerived!25 Output from the destructor o...
阅读全文
摘要:从该对象如何访问其他对象全局函数调用全局函数AfxGetApp可以得到CWinApp应用类指针应用AfxGetApp()->m_pMainWnd为框架窗口指针;用CWinApp::GetFirstDocTemplatePostion、CWinApp::GetNextDocTemplate来遍历所有文...
阅读全文
摘要:转自:http://blog.csdn.net/nuptboyzhb/article/details/7455471源代码:http://download.csdn.net/detail/nuptboyzhb/4221531CSplitterWnd类CSplitterWnd类提供一个分隔器窗口的功能...
阅读全文
摘要:VC++编程时,经常会监控某个算法的计算时间,以确定算法的效率。编码举例如下,1 //========start: algorithm time=============2 //3 SYSTEMTIME st1;4 GetLocalTime(&st1);//获取算法处理前,系统时间5 //6 //========start: algorithm time=============。。。。。。。。// algorithm processing 1 //========end: algorithm time============= 2 ...
阅读全文
摘要:vc 获取当前时间(2010-02-10 11:34:32)http://wenku.baidu.com/view/6ade96d049649b6648d7475e.html1.使用CTime类CString str;//获取系统时间CTime tm;tm=CTime:: GetCurrentTime_r();str=tm.Format("现在时间是%Y年%m月%d日 %X");MessageBox(str,NULL,MB_OK);2: 得到系统时间日期(使用GetLocalTime)SYSTEMTIME st;CString strDate,strTime;GetLoca
阅读全文
摘要:MFC EXTENT DLL编程 类输出,形式===MyDllTest.h====class AFX_EXT_CLASS MyDllTest{ ,,,,,};==MyDllTest.cpp====#incloud"stdafx.h".......在类定义文件中,一定要使用 预编译头文件 #inclo...
阅读全文

浙公网安备 33010602011771号