利用mfc基于对话框实现简易的绘图软件

本文档介绍了如何利用MFC的对话框功能,实现一个基础的绘图软件。通过核心代码的展示,详细说明了在对话框中进行图形绘制的实现过程。
摘要由CSDN通过智能技术生成

基于MFC对话框实现简单的绘图软件

软件的简单布局
在这里插入图片描述
在这里插入图片描述

核心代码展示:

protected:
	HICON m_hIcon;

	// 生成的消息映射函数
	virtual BOOL OnInitDialog();
	afx_msg void OnPaint();
	afx_msg HCURSOR OnQueryDragIcon();
	DECLARE_MESSAGE_MAP()
public:
	//图形类型选择列表框变量
	CListBox MY_STYLE_LIST;
	CStatic my_static;
	//画笔颜色选择列表框变量
	CComboBox my_ComboBox_PenColor;
	CStatic my_static_Pencolor;
	//画刷颜色选择列表框变量
   CStatic my_static_HbrushColor;
	CComboBox my_comb_Hbrush;
	//画笔尺寸选择列表框变量
    
	CStatic my_Line_size;
	CComboBox my_Comb_LineSize;
	//画笔类型标记
	int Flag_Line_Style;
	//画笔尺寸
	int my_Pen_Size;
	//画刷类型标记
    int Flag_Hbrush_Style;
	//画笔颜色标记
    COLORREF Flag_PEN_Color;
	//画刷颜色标记
    COLORREF Flag_Hbrush_Color;
	afx_msg void OnBnClickedRadio1Solid();
	afx_msg void OnBnClickedRadio2Dash();
	afx_msg void OnBnClickedButton1Paint();
	afx_msg void OnBnClickedRadio3Dot();
	afx_msg void OnBnClickedRadio4Dashdot();
	afx_msg void OnBnClickedRadio5Solidbrush();
	afx_msg void OnBnClickedRadio6Cross();
	afx_msg void OnBnClickedRadio7Fdiagional();
	afx_msg void OnBnClickedRadio8Bdiagional();
	afx_msg void OnBnClickedButton2Exit();
	afx_msg void OnCbnSelendokCombo1Pencolor();
	afx_msg void OnCbnSelendokCombo2();
	afx_msg void OnCbnSelendokCombo1();
	

};
PaintDlg.cpp文件代码:
#include "stdafx.h"
#include "Paint.h"
#include "PaintDlg.h"
#include "afxdialogex.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#endif


// CPaintDlg 对话框



CPaintDlg::CPaintDlg(CWnd* pParent /*=NULL*/)
	: CDialogEx(CPaintDlg::IDD, pParent)
	, Flag_Line_Style(0)
	, Flag_Hbrush_Style(0)
	, my_Pen_Size(0)
{
   
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

void CPaintDlg::DoDataExchange(CDataExchange* pDX)
{
   
	CDialogEx::DoDataExchange(pDX);
	DDX_Control(pDX, IDC_LIST1_STYLE, MY_STYLE_LIST);
	DDX_Control(pDX, IDC_STATIC_STYLE, my_static);
	DDX_Control(pDX, IDC_COMBO1_PenColor, my_ComboBox_PenColor);
	DDX_Control(pDX, IDC_STATIC_PenColor, my_static_Pencolor);
	DDX_Control(pDX, IDC_STATIC_HbrushColor, my_static_HbrushColor);
	DDX_Control(pDX, IDC_COMBO2, my_comb_Hbrush);

	DDX_Control(pDX, IDC_STATIC_Line_Size, my_Line_size);
	
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值