[MFC]Squres程序:单文档界面演示

本文通过Squares应用程序详细讲解了MFC环境下如何创建单文档界面程序。程序包含一个4×4网格,用户可选择6种颜色填充格子,点击保存的.sqr文件记录网格颜色状态。创建过程涉及设置Document/View架构,修改CSquresDocument和CSquresView类,其中CSquresView需处理鼠标左击事件。
摘要由CSDN通过智能技术生成

1. 接下来将展示Squres应用程序来说明单文档界面程序的编写:

    1) 视图用来显示一个4×4的网格,初始化时每个网格都是白色的(即新建文档时);

    2) 菜单栏中有一个Color子菜单,可以选择当前要填充的颜色,总共共有6中,而初始时默认将红色作为当前填充色;

    3) 可以用鼠标点击网格中的格子,之后会用当前选中的填充色来填充选中的格子;

    4) 程序文档的后缀是.sqr,里面就保存4×4网格中各个格子的颜色,以及当前选中的填充色;


2. 程序的创建:

    1) 还是选择MFC[.exe]模板;

    2) 第一步中选择Single document选项,并且要选中Document/View architecture support?复选框;

    3) 而在第3步中的Advanced选项卡中填写默认的文件扩展名.sqr就行了(Wizzard会自动将该扩展名写入程序的字符串资源当中);

    4) 由于程序简单,只需要修改Document类和View类即可;


3. CSquresDocument:

.h:

// SquresDoc.h : interface of the CSquresDoc class
//
/

#if !defined(AFX_SQURESDOC_H__29091B77_23ED_4908_817F_F58907F39F60__INCLUDED_)
#define AFX_SQURESDOC_H__29091B77_23ED_4908_817F_F58907F39F60__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000


class CSquresDoc : public CDocument
{
protected: // create from serialization only
	CSquresDoc();
	DECLARE_DYNCREATE(CSquresDoc)

// Attributes
public:

// Operations
public:

// Overrides
	// ClassWizard generated virtual function overrides
	//{
  {AFX_VIRTUAL(CSquresDoc)
	public:
	virtual BOOL OnNewDocument();
	virtual void Serialize(CArchive& ar);
	//}}AFX_VIRTUAL

// Implementation
public:
	COLORREF GetCurrentColor(); // 获取当前选中的颜色
	void SetSquareColor(COLORREF color, int i, int j); // 修改某一网格的颜色
	COLORREF GetSquareColor(int i, int j); // 获取某一网格的颜色
	virtual ~CSquresDoc();
#ifdef _DEBUG
	virtual void AssertValid() cons
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值