MFC基础学习应用

MFC基础学习应用

1.基于对话框的使用

  1. 左上角为菜单键(其下的关于MFC主要功能由IDD_ABOUTBOX决定)

    附图

  2. 右下角为按钮(基本功能由IDD_DIALOG决定,添加按钮使用由左上角的工具箱完成)

    附图

2.自行添加功能与按钮//功能代码

c++ 复制代码
void CMFCApplication4Dlg::OnBnClickedButton1()
{
	// TODO: 在此添加控件通知处理程序代码
	MessageBox(_T("欢迎来到王者荣耀"));
}

3.最后运行效果截图

二.基于单个文档的使用

1.画线//神器类向导

需要添加两个消息一个为LBUTTONUP(另一个为LBUTTONDOWN)

还需要添加一个自定义的CPoint私有变量

首先主意类向导要勾选_________view(前面一般是你的项目名)

c++ 复制代码
void CMFCApplication5View::OnLButtonDown(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	c_porigin = point;
	CView::OnLButtonDown(nFlags, point);
}


void CMFCApplication5View::OnLButtonUp(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	CDC* pdc = GetDC();
	pdc->MoveTo(c_porigin);//起点位置
	pdc->LineTo(point);//终点位置
	ReleaseDC(pdc);
	CView::OnLButtonUp(nFlags, point);
}

2.运行结果截图

3.类向导勾选注意事项

截图:

三.画笔

c++ 复制代码
void CMFCApplication5View::OnLButtonUp(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	CPen pen(PS_SOLID, 5, RGB(255, 255, 0));//实线
	CClientDC dc(this);
	CPen* oldpen = dc.SelectObject(&pen);
	dc.MoveTo(c_porigin);
	dc.LineTo(point);
	dc.SelectObject(oldpen);
	CView::OnLButtonUp(nFlags, point);
}

截图

四.多种线条勾选方式

分别由PS_SOLID(实线条),PS_DASH(虚线(注意宽度不要超于2)),PS_DOT(点线)(宽度不要超于2),PS_DASHDOT(点虚线)

PS_DASH

PS_DOT

PS_DASHDOT

五.画刷

c++ 复制代码
void CMFCApplication5View::OnLButtonUp(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	CBrush brush(RGB(0,255,255));
	CClientDC dc(this);
	dc.FillRect(CRect(c_porigin,point),&brush);

}

运行效果截图

默认画刷

相关推荐
MartinYeung53 分钟前
[论文学习]Skill-MAS:面向自动多智能体系统的元技能进化
大数据·人工智能·学习
我不是懒洋洋5 分钟前
从零实现一个分布式数据管道:dbt的核心设计
c++
阳光九叶草LXGZXJ6 分钟前
达梦数据库-报错-11-cmd 13 validate error
linux·运维·数据库·sql·学习
~光~~12 分钟前
【嵌入式linux学习_OV8858 bring up】L1_从Sensor到RK3588发生了什么
linux·运维·学习
Darkwanderor27 分钟前
使用管道实现进程间通信 (IPC, Inter-Process Communitation)
linux·c语言·c++
m4Rk_35 分钟前
【论文阅读】Agent 记忆机制(27):MemRefine——用 LLM 事实判断将长期记忆压缩到固定预算
论文阅读·人工智能·学习
乱七八糟的屋子36 分钟前
【C++数值计算】Armadillo超详细入门教程
c++·线性代数·数值计算·科学计算·矩阵运算·armadillo
Yyyyyy~40 分钟前
【C++】vector
c++·c++primer
星恒随风1 小时前
Linux 权限详解:从 rwx、chmod 到 umask、目录权限与粘滞位
linux·运维·服务器·笔记·学习
阳光九叶草LXGZXJ1 小时前
达梦数据库-报错-12-[-7184]:对象定义[XXX]被修改,版本检查失败
linux·运维·服务器·数据库·sql·学习