资源简介
计算机图形学课程作业,要求使用C++mfc编写的类似画图的程序,包括画直线,圆,多边形,填充颜色(递归,扫描线),存储到TXT,可恢复,有裁剪功能。
代码片段和文件信息
#include “stdafx.h“
#include “MainFrm.h“
#include “ClassView.h“
#include “Resource.h“
#include “exercise1_1.h“
class CClassViewMenuButton : public CMFCToolBarMenuButton
{
friend class CClassView;
DECLARE_SERIAL(CClassViewMenuButton)
public:
CClassViewMenuButton(HMENU hMenu = NULL) : CMFCToolBarMenuButton((UINT)-1 hMenu -1)
{
}
virtual void OnDraw(CDC* pDC const CRect& rect CMFCToolBarImages* pImages BOOL bHorz = TRUE
BOOL bCustomizeMode = FALSE BOOL bHighlight = FALSE BOOL bDrawBorder = TRUE BOOL bGrayDisabledButtons = TRUE)
{
pImages = CMFCToolBar::GetImages();
CAfxDrawState ds;
pImages->PrepareDrawImage(ds);
CMFCToolBarMenuButton::OnDraw(pDC rect pImages bHorz bCustomizeMode bHighlight bDrawBorder bGrayDisabledButtons);
pImages->EndDrawImage(ds);
}
};
IMPLEMENT_SERIAL(CClassViewMenuButton CMFCToolBarMenuButton 1)
//////////////////////////////////////////////////////////////////////
// 构造/析构
//////////////////////////////////////////////////////////////////////
CClassView::CClassView()
{
m_nCurrSort = ID_SORTING_GROUPBYTYPE;
}
CClassView::~CClassView()
{
}
BEGIN_MESSAGE_MAP(CClassView CDockablePane)
ON_WM_CREATE()
ON_WM_SIZE()
ON_WM_CONTEXTMENU()
ON_COMMAND(ID_CLASS_ADD_MEMBER_FUNCTION OnClassAddMemberFunction)
ON_COMMAND(ID_CLASS_ADD_MEMBER_VARIABLE OnClassAddMemberVariable)
ON_COMMAND(ID_CLASS_DEFINITION OnClassDefinition)
ON_COMMAND(ID_CLASS_PROPERTIES OnClassProperties)
ON_COMMAND(ID_NEW_FOLDER OnNewFolder)
ON_WM_PAINT()
ON_WM_SETFOCUS()
ON_COMMAND_RANGE(ID_SORTING_GROUPBYTYPE ID_SORTING_SORTBYACCESS OnSort)
ON_UPDATE_COMMAND_UI_RANGE(ID_SORTING_GROUPBYTYPE ID_SORTING_SORTBYACCESS OnUpdateSort)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CClassView 消息处理程序
int CClassView::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CDockablePane::OnCreate(lpCreateStruct) == -1)
return -1;
CRect rectDummy;
rectDummy.SetRectEmpty();
// 创建视图:
const DWORD dwViewstyle = WS_CHILD | WS_VISIBLE | TVS_HASLINES | TVS_LINESATROOT | TVS_HASBUTTONS | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
if (!m_wndClassView.Create(dwViewstyle rectDummy this 2))
{
TRACE0(“未能创建类视图\n“);
return -1; // 未能创建
}
// 加载图像:
m_wndToolBar.Create(this AFX_DEFAULT_TOOLBAR_style IDR_SORT);
m_wndToolBar.LoadToolBar(IDR_SORT 0 0 TRUE /* 已锁定*/);
onchangeVisualstyle();
m_wndToolBar.SetPanestyle(m_wndToolBar.GetPanestyle() | CBRS_TOOLTIPS | CBRS_FLYBY);
m_wndToolBar.SetPanestyle(m_wndToolBar.GetPanestyle() & ~(CBRS_GRIPPER | CBRS_SIZE_DYNAMIC | CBRS_BORDER_TOP | CBRS_BORDER_BOTTOM | CBRS_BORDER_LEFT | CBRS_BORDER_RIGHT));
m_wndToolBar.SetOwner(this);
// 所有命令将通过此控件路由,而不是通过主框架路由:
m_wndToolBar.SetRouteCommandsViaframe(FALSE);
CMenu menuSort;
menuSort.LoadMenu(IDR_POPUP_SORT);
m_wndToolBar.ReplaceButton(ID_SORT_MENU CClassViewMenuButton(m
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-07-09 19:19 exercise1_1\
目录 0 2019-05-30 10:44 exercise1_1\Debug\
文件 500736 2019-05-30 17:29 exercise1_1\Debug\exercise1_1.exe
文件 4206576 2019-05-30 17:29 exercise1_1\Debug\exercise1_1.ilk
文件 7375872 2019-05-30 17:29 exercise1_1\Debug\exercise1_1.pdb
目录 0 2019-05-30 15:45 exercise1_1\exercise1_1\
文件 69095424 2019-07-09 19:19 exercise1_1\exercise1_1.sdf
文件 900 2019-04-09 19:15 exercise1_1\exercise1_1.sln
文件 31744 2019-07-09 19:19 exercise1_1\exercise1_1.suo
文件 52 2019-05-30 16:35 exercise1_1\exercise1_1\Circle.txt
文件 9033 2019-04-09 19:15 exercise1_1\exercise1_1\ClassView.cpp
文件 1291 2019-04-09 20:59 exercise1_1\exercise1_1\ClassView.h
文件 987 2019-04-18 15:45 exercise1_1\exercise1_1\Color_Fill.cpp
文件 449 2019-04-18 15:45 exercise1_1\exercise1_1\Color_Fill.h
目录 0 2019-07-09 19:16 exercise1_1\exercise1_1\Debug\
文件 33694 2019-05-30 17:29 exercise1_1\exercise1_1\Debug\cl.command.1.tlog
文件 346350 2019-05-30 17:29 exercise1_1\exercise1_1\Debug\CL.read.1.tlog
文件 32296 2019-05-30 17:29 exercise1_1\exercise1_1\Debug\CL.write.1.tlog
文件 191229 2019-05-29 21:44 exercise1_1\exercise1_1\Debug\ClassView.obj
文件 25616 2019-05-29 21:44 exercise1_1\exercise1_1\Debug\Color_Fill.obj
文件 915 2019-04-28 14:39 exercise1_1\exercise1_1\Debug\exercise1_1.exe.em
文件 980 2019-04-28 14:40 exercise1_1\exercise1_1\Debug\exercise1_1.exe.em
文件 640 2019-05-30 17:29 exercise1_1\exercise1_1\Debug\exercise1_1.exe.intermediate.manifest
文件 65 2019-07-09 19:16 exercise1_1\exercise1_1\Debug\exercise1_1.lastbuildstate
文件 1274 2019-07-09 19:16 exercise1_1\exercise1_1\Debug\exercise1_1.log
文件 58590 2019-05-30 10:49 exercise1_1\exercise1_1\Debug\exercise1_1.obj
文件 36896768 2019-05-14 18:49 exercise1_1\exercise1_1\Debug\exercise1_1.pch
文件 142696 2019-05-30 15:45 exercise1_1\exercise1_1\Debug\exercise1_1.res
文件 713 2019-04-09 19:34 exercise1_1\exercise1_1\Debug\exercise1_1.vcxprojResolveAssemblyReference.cache
文件 0 2019-04-09 19:34 exercise1_1\exercise1_1\Debug\exercise1_1.write.1.tlog
文件 56541 2019-05-29 21:44 exercise1_1\exercise1_1\Debug\exercise1_1Doc.obj
............此处省略164个文件信息
相关资源
- BCGControlBar MFC Pro 28.0完整版
-
VC MFC Joseph li
nk约瑟夫环出列顺序动 - VS2010运行库包括mfc
- MFC42U.LIB
- 计算机图形学原理及实践——C语言描
- MFC实现万花筒效果画笔画出任意线条
- 车牌识别_C++ code_MFC.zip
- MFC Windows 程序设计 中文版
- 医学图片DICOM格式打开以及像素计算
- MFC+VS2013+OpenCV打开任意路径下的图片并
- vs2010 + MFC + UDP socket 聊天程序。
- VS实现MFC的点对点聊天室
- 亲戚计算器4.2.zip
- MFC实现的抽奖程序含代码
- MFC数据库ODBC编程-教务管理系统
- 计算机图形学基础教程 VisualC++版 习
- MFC+YOLOv3完美版.zip
- 计算机图形学(MFC)-多边形平滑填充
- MFC kinect 骨骼识别
- 课程设计—MFC学生信息管理系统.7z
- 基于MFC的RPG回合制对战游戏
- MFC 编写的仪器测试软件
- 可视化程序设计/MFC/图书管理系统
- 墨卡托投影.rar
- Visual Studio2017平台下的使用MFC做的音乐
- 学生宿舍管理系统MFC实现 采用Driver
- MFC学生成绩管理系统wujiekd是我博客名
- MFC实现小球运动
- mfc Socket 网络调试助手
- VS2015MFC图形系统开发基本图形绘制线
评论
共有 条评论