- 博客(11)
- 资源 (20)
- 收藏
- 关注
原创 使用CMFCListCtrl控件时的排序方法
项目开发工具为VS2010,对于用惯了VC6的我来说,有些新特性摸起来真有些费神。这两天为了一个数据显示列表弄得云里雾里的。背景是这样的:1、要在界面中显示数据库中数据(表格形式),每列要有标题名。2、数据库中的一个字段可能要拆分称两列进行显示。3、显示的数据要能任意列进行排序,每列的数据可能有重复值。因此,我使用了“列表”控件。后来听说VS2010中有个CMFCListCtr
2012-04-24 16:57:39 1679
原创 Unicode字符集和多字节字符集关系
Unicode字符集和多字节字符集关系在计算机中字符通常并不是保存为图像,每个字符都是使用一个编码来表示的,而每个字符究竟使用哪个编码代表,要取决于使用哪个字符集(charset)。在最初的时候,Internet上只有一种字符集——ANSI的ASCII字符集,它使用7 bits来表示一个字符,总共表示128个字符,其中包括了英文字母、数字、标点符号等常用字符。之后,又进行扩展,使用8
2012-04-19 09:48:06 27656 10
原创 关于使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 991
原创 MFC制作双缓冲无闪烁的字幕滚动条
最近一段时间由于项目需要,需要一个字幕滚动条,所以了解了一下双缓冲的绘图方法。1.闪烁产生原因首先,介绍一下为什么会产生闪烁。我们在绘图时收到WM_PAINT消息后,系统会调用默认的画刷来填充被Invalidate 的区域,这样由于时间差的原因,会产生闪烁的现象。2.双缓冲原理双缓冲使用内存缓冲区来解决由多重绘制操作造成的闪烁问题。当启用双缓冲时,所有绘制操作首先呈现到内存缓冲区,
2012-04-16 18:02:16 2273
原创 如何消除vc屏幕闪烁的方法
也许我们都碰到过这种情况,当你想重画某个窗口的时候,或你需要每隔一段时间要进行重画窗口,窗口会不停的闪烁。那么如何消除闪烁呢?借鉴了别人的经验,自己也总结一下,现将总结的几种方法介绍一下,供大家参考。1、将Invalidate()替换为InvalidateRect()。 因为Invalidate()会导致整个窗口的图象重画,需要的时间比较长,而InvalidateRect()仅仅重画R
2012-04-16 17:16:39 979
原创 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 2985
转载 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 24302 16
原创 VC 树形类(CTreeCtrl|CViewTree)
修改设置样式:m_treeCtrl.ModifyStyle(0,TVS_HASBUTTONS | TVS_LINESATROOT | TVS_HASLINES); 树形控件可以用于树形的结构,其中有一个根接点(Root)然后下面有许多子结点,而每个子结点上有允许有一个或多个或没有子结点。MFC中使用CTreeCtrl类来封装树形控件的各种操作。通过调用BO
2012-04-11 09:00:15 8532
转载 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 1759
转载 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 10273
转载 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 1681
Angle_v3.4_PART3.rar
2017-01-20
Angle_v3.4_PART2.rar
2017-01-20
Angle_v3.4_PART1.rar
2017-01-20
Angle - Bootstrap Admin 3.5.4 2017-01-20更新part3
2017-01-20
Angle - Bootstrap Admin 3.5.4 2017-01-20更新part2
2017-01-20
Angle - Bootstrap Admin 3.5.4part1 (共1-3部分
2017-01-20
XE2.Activator.v5.5.rar
2012-04-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人