资源简介
win32实现的画图,可对整个屏幕进行截图,有工具栏和调色板的子窗口,可进行一系列相关设置 可保存为bmp格式,并且可以打开 有橡皮功能
代码片段和文件信息
#include“stdafx.h“
#include“ColorBox.h“
static TCHAR szColorBtnClass[] = TEXT(“ColorBtn“);
static TCHAR szColorBoxClass[] = TEXT(“ColorBox“);
ATOM RegisterColorClass(HINSTANCE hInstance)
{
WNDCLASSEX wcex;
wcex.cbSize = sizeof(WNDCLASSEX);
wcex.style = CS_HREDRAW | CS_VREDRAW;
wcex.cbClsExtra = 0;
wcex.cbWndExtra = 0;
wcex.hInstance = hInstance;
wcex.hIcon = NULL;
wcex.hCursor = LoadCursor(NULL IDC_ARROW);
wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
wcex.lpszMenuName = NULL;
wcex.hIconSm = NULL;
wcex.lpszClassName = szColorBtnClass;
wcex.lpszMenuName = NULL;
wcex.lpfnWndProc = WndColorBtnProc;
wcex.cbWndExtra = 4;
if (!RegisterClassEx(&wcex))
return 0;
wcex.lpszClassName = szColorBoxClass;
wcex.lpszMenuName = NULL;
wcex.lpfnWndProc = WndColorBoxProc;
wcex.cbWndExtra = 0;
if (!RegisterClassEx(&wcex))
return 0;
return 1;
}
LRESULT CALLBACK WndColorBtnProc(HWND hWnd UINT message WPARAM wParam LPARAM lParam)
{
PAINTSTRUCT ps;
HDC hdc;
COLORREF color;
HBRUSH hBr hOldBr;
RECT rt;
switch (message)
{
case WM_CREATE:
color = (COLORREF)((LPCREATESTRUCT)lParam)->lpCreateParams;
SetWindowLong(hWnd 0 color);
break;
case WM_PAINT:
hdc = BeginPaint(hWnd &ps);
GetClientRect(hWnd &rt);
color = (COLORREF)GetWindowLong(hWnd 0);
hBr = CreateSolidBrush(color);
hOldBr = (HBRUSH)Selectobject(hdc hBr);
Rectangle(hdc 0 0 rt.right rt.bottom);
// TODO: 在此添加任意绘图代码...
Selectobject(hdc hOldBr);
Deleteobject(hBr);
EndPaint(hWnd &ps);
break;
case WM_LBUTTONDOWN:
color = (COLORREF)GetWindowLong(hWnd 0);
SendMessage(GetParent(hWnd)
WM_CHANGE_COLOR (WPARAM)0 (LPARAM)color);
break;
case WM_DESTROY:
break;
default:
return DefWindowProc(hWnd message wParam lParam);
}
return 0;
}
LRESULT CALLBACK WndColorBoxProc(HWND hWnd UINT message WPARAM wParam LPARAM lParam)
{
PAINTSTRUCT ps;
HDC hdc;
int i;
HWND hWndColor;
static COLORREF aColor[24] = {
RGB(0 0 0)
RGB(192 192 192) RGB(128 128 128)
RGB(255 0 0) RGB(128 0 0)
RGB(255 255 0) RGB(128 128 0)
RGB(0 255 0) RGB(0 128 0)
RGB(0 255 255) RGB(0 128 128)
RGB(0 0 255) RGB(0 0 128)
RGB(255 0 255) RGB(128 0 128)
RGB(255 255 128) RGB(128 128 64)
RGB(0 255 128) RGB(0 64 64)
RGB(128 255 255) RGB(0 128 255)
RGB(128 128 255) RGB(0 64 128)
RGB(255 0 128)
};
static HWND hWndSendTo;
switch (message)
{
case WM_CREATE:
hWndSendTo = (HWND)(((LPCREATESTRUCT)(lParam))
->lpCreateParams);
HINSTANCE hInsthWnd;
hInsthWnd = (HINSTANCE)GetWindowLong(hWnd GWL_HINSTANCE);
for (i = 0; i < 24; i++)
{
if (i < 12){
hWndColor = CreateWindow(szColorBtnClass NULL
WS_CHILD i * 40 0 40 40 hWnd NULL hInsthWnd (LPVOID)aColor[i]);
ShowWindow(hWndColor SW_NORMAL);
}
else{
hWndColor = CreateWindow(szColorBt
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-05-21 18:15 MyPaint3.0 - 副本 (2)\
目录 0 2017-05-21 18:13 MyPaint3.0 - 副本 (2)\msvcp120d.i386.pdb\
目录 0 2017-05-21 18:13 MyPaint3.0 - 副本 (2)\msvcp120d.i386.pdb\3C05516E57E740EB8D3F9722C5BD80DD1\
文件 1179648 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\msvcp120d.i386.pdb\3C05516E57E740EB8D3F9722C5BD80DD1\download.error
目录 0 2017-05-21 18:13 MyPaint3.0 - 副本 (2)\MyPaint\
文件 46399488 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint.sdf
文件 967 2017-05-08 20:10 MyPaint3.0 - 副本 (2)\MyPaint.sln
文件 58880 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint.v12.suo
文件 8177 2017-05-17 15:39 MyPaint3.0 - 副本 (2)\MyPaint\5wwrqarp.dwk
文件 13975 2017-05-18 21:31 MyPaint3.0 - 副本 (2)\MyPaint\bhrrwi5m.0tp
文件 4401 2017-05-19 15:00 MyPaint3.0 - 副本 (2)\MyPaint\ColorBox.cpp
文件 337 2017-05-15 20:15 MyPaint3.0 - 副本 (2)\MyPaint\ColorBox.h
目录 0 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\
文件 12979 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\ColorBox.obj
文件 151811 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\Drawst
文件 14616 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\Drawst
文件 210154 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\FileSaveOpen.obj
文件 1848 2017-05-19 14:10 MyPaint3.0 - 副本 (2)\MyPaint\Debug\MyPaint.Build.CppClean.log
文件 3235 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\MyPaint.log
文件 277766 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\MyPaint.obj
文件 7012352 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\MyPaint.pch
文件 23992 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\MyPaint.res
目录 0 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\MyPaint.tlog\
文件 10850 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\MyPaint.tlog\cl.command.1.tlog
文件 90414 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\MyPaint.tlog\CL.read.1.tlog
文件 11620 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\MyPaint.tlog\CL.write.1.tlog
文件 4600 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\MyPaint.tlog\li
文件 8732 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\MyPaint.tlog\li
文件 2680 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\MyPaint.tlog\li
文件 193 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\MyPaint.tlog\MyPaint.lastbuildstate
文件 1014 2017-05-21 18:14 MyPaint3.0 - 副本 (2)\MyPaint\Debug\MyPaint.tlog\rc.command.1.tlog
............此处省略51个文件信息
相关资源
- OpenGL三维图形系统开发与实用技术.
- GDAL-2.2.4-cp27-cp27m-win32.whl
- Effective+C中文版第三版+高清PDF
- ActivePerl-5.8.8.822-MSWin32-x86-280952.msi
- 有关绘图类chartctrl的说明,源码和
- chromedriver_72.0.3626.7集合win32linux64mac6
- geckodriver v0.24.0,包含mac、linux、win3
- cmake-3.5.0-rc1-win32-x86.msi
- vs2017编译发布期货策略程序化自动交
-
基于Qt封装minibl
ink库-支持mingw和vc - 编写一个Windows应用程序,要求在窗口
- 完整代码!扫雷游戏,vs2010
- 基于机器视觉的列车前方障碍物检测
- 基于QGraphicsView实现的画图软件
- DoIP_Demo.zip
- 北斗模块GPS定位显示
- 双向链表及其应用——实现多项式的
- 商品库存管理系统(源码+数据库+论文
- Win32鼠标事件绘制直线
- swt org.sf.feeling.swt.win32.extension_1.1.0_S
- Win32DiskImager-1.0.0汉化版
- Shell命令行解释器
- VC OpenCV车牌识别
- Iczelion的win32汇编教程
- 基于linux QT开发的万年历程序
- 毕业设计基于Opencv的车牌识别系统
- GMT绘图软件参考手册
- windows 3.2 ISO
- 网狐棋牌(文档与源代码)
- wireshark win32 1.62
评论
共有 条评论