- 博客(12)
- 收藏
- 关注
原创 浮点型与0比较
由于浮点型数据在计算机中的表示方式与其余数据结构相差巨大,不能用浮点型数据直接和0用>=,因为float的精度是6位,即精确到小数点后第五位,所以应该使用其精确位0.00001;同理双精度小数其精度为15位,精确到小数点后第14位。所以float型数据与0的比较程序如下:#define ACCU 0.00001if((x >= -ACCU)&&(x 此为判断的if语句。
2012-11-28 09:37:22 1262
原创 vs2008 中查看类关系视图
在VS2008中,有时需要查看类的关系图,需要点一个按钮,平时这个按钮不会出现.当点击项目名称时,在解决方案资源管理器上方会出现查看类关系的图标。点击即可。可以找到放大镜放大查看。
2012-11-22 09:39:45 3313
原创 sizeof _countof wcslen wcscpy wcsncpy
wchar_t wszJsonPath[ 128];wcscpy( wszJsonPath,L"http://img.51bzzj.com/");int len1=sizeof(wszJsonPath); ->len1=256int len2=_countof(wszJsonPath); --->len2=128int len3=wcslen(wszJsonPath);
2012-11-16 12:45:18 789
原创 线程句柄何时关闭
操作系统用一个线程内核对象来管理线程,一个句柄就标识了一个内核对象,你只有通过这个句柄才能访问线程。内核对象有一个引用计数,表明当前有多少句柄关联到这个内核对象,当该计数为0时,系统就会销毁这个对象。CloseHandle的作用就是关闭一个句柄,使用线程内核对象的引用计数减一。注意只是引用计数减一,不会关闭你创建的线程。所以,如果你创建了一个线程并且不会再去访问它,就可以立即调用CloseHand
2012-11-12 09:23:07 3403
原创 WM_MOUSEHOVER
case WM_MOUSEMOVE:{ m_bTrackMouse=TRUE;if (m_bTrackMouse) //若允许追踪,则。 { TRACKMOUSEEVENT csTME; csTME.cbSize = sizeof(csTME); csTME.dwFlags = TME_LEAVE|TME_HOVER; csTME.hwndTrack =
2012-11-08 09:09:23 742
原创 错误处理
windows函数是如何进行错误处理的。调用windows函数时,它会先验证我们传给它的参数,然后开始执行任务。如何传入的参数无效,或者由于其它原因导致操作无法执行,则函数的返回值将指出函数因为某些原因失败了。常见的windows函数返回值数据类型。void 这个函数不会失败。bool 失败返回0,成功返回非0。应该避免测试返回值是否为TRUE,最稳妥的做法是检查它是否
2012-11-01 22:08:29 627
原创 VC 判断文件存不存在
VC下判断文件是否存在的方法使用_access函数,函数原型为int_access(constchar*path,intmode);使用CreateFile函数,函数原型为: HANDLE CreateFile( LPCTSTR lpFileName, /
2012-10-29 10:30:54 710
原创 ARGB
一种色彩模式,也就是RGB色彩模式附加上Alpha(透明度)通道,常见于32位位图的存储结构。 ARGB 的一个像素占4字节。http://msdn.microsoft.com/en-us/library/ms536261.aspx
2012-10-19 16:02:17 645
原创 DoModal 的调用会发送 WM_INITDIALOG 消息 WM_ERASEBKG 先于WM_PAINT
DoModal 的调用会发送 WM_INITDIALOG 消息 在DLGTEMPLATE 中初始化一必要的信息 WM_ERASEBKG 先于WM_PAINT
2012-10-11 10:32:57 831
原创 ::GetWindowRect ::GetClientRect
::GetWindowRect 获取的RECT 区域rc 是相对屏幕坐标系的。即 (rc.left,rc.top)是相对桌面的(0,0)的位置。::GetClientRect 获取的RECT区域rc 是相对于窗口客户区的(无WS_CAPTION 属性窗口的左上角),即无 title bar 窗口的左上角,有title bar则为title bar下面区域的左上角。rc.
2012-09-28 08:58:41 581
原创 WM_MOUSELEAVE WM_MOUSEHOVER
1. error LNK2001: 无法解析的外部符号__imp___TrackMouseEvent@4解决方案:#include #pragma comment(lib,"Comctl32.lib")2.WM_MOUSEMOVE 中用::_TrackMouseEvent(&csTME); 开启Windows的WM_MOUSELEAVE,WM_MOUSEHOVER事件
2012-09-27 12:41:46 1068
原创 ShowWindow
::ShowWindow(HWND hWnd,int nCmdShow )SW_HIDE: 隐藏窗口,任务栏和托盘上都没显示图标。不结束进程。 不改变窗体在屏幕中的位置SW_MINIMIZE :最小化窗口,任务栏显示图标,托盘不显示。不结束进程。改变窗体在屏幕中的位置 将窗口最小化到托盘~~ 原理 1、最小化的原理:首先要将窗口隐藏,然后在右下角绘制图标。 2
2012-09-27 11:58:57 948
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人