- 博客(6)
- 收藏
- 关注
原创 Visual C++6.0使用GDI+的一般方法
Visual C++6.0使用GDI+的一般方法 1. 载解压GDI+开发包;2. 正确设置include & lib 目录;3. stdafx.h 添加:#ifndef ULONG_PTR#define ULONG_PTR unsigned long*#endif#include 4. 程序中添加GDI+的包含文件gdiplus.h以及附加的类库gdiplu
2006-03-06 11:08:00 2111
原创 拖放选中对象
简单就是:在图形范围内判断鼠标点击,捕获鼠标,随着鼠标的移动,不断地擦除原有位置上的图形,在新位置上绘图。要保存好:图形位置(左上角坐标)、图形尺寸、鼠标点于图形位置的偏移、是否选中图形的标记。注意:逻辑坐标和设备坐标的转换。保存的图形坐标、尺寸为逻辑坐标;用DC来画图用的是逻辑坐标;创建的可选中区域和判断鼠标点再区域内用设备坐标;得到鼠标点相对图形的偏移是设备坐标;擦
2006-02-08 09:58:00 1146 2
原创 双缓冲绘图
双缓冲绘图主要用来解决屏幕刷新闪烁的问题。图形为什么会闪烁的原因是:我们的绘图过程大多放在OnDraw或者OnPaint函数中,OnDraw在进行屏幕显示时是由OnPaint进行调用的。当窗口由于任何原因需要重绘时,总是先用背景色将显示区清除,然后才调用OnPaint,而背景色往往与绘图内容反差很大,这样在短时间内背景色与显示图形的交替出现,使得显示窗口看起来在闪。如果将背景刷设置成NULL(
2006-02-08 09:48:00 956
原创 目录处理的Shell函数
一、打开一个文件目录实现这个功能要调用Windows API函数SHBrowseForFolder,入参为BROWSEINFO结构的指针,返回一个ITEMIDLIST类型的指针,通过这个指针调用函数SHGetPathFromIDList可以确定所选择的目录的全名称。 首先要包含头文件shlobj.h 创建一个如图所示的对话框,调用函数:LPITEMIDLIST SHBr
2006-02-08 09:37:00 1779
原创 多线程创建模态进度条窗口
主窗体的类名为:CModifyFileDlg;进度条窗体的类名为:CDlgProgress;进度条实例作为的CDlgProgress成员的变量名为:m_ProgressCtrl (类型为CProgressCtrl)。 第一步:主窗体的按钮事件响应。在主窗体的按钮事件响应中声明进度条窗口对象,调用其成员函数,把参数传给CDlgProgress的当前实例。void CModifyF
2006-02-06 11:19:00 3640 3
原创 chapter2_2 非矩形窗口
CHAPTER2 追加各种处理 --非矩形窗口 非矩形窗口 windows里提供的改变窗口形状的API:设定指定窗口的窗口区域,使操作系统不显示窗口区域以外的部分。 Win32 API SetWindowRgnint SetWindowRgn( HWND hWnd, // handle to window
2006-01-19 15:38:00 1057
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人