📄 mydoc.cpp
字号:
#include <afxwin.h>
#include <afxdlgs.h>
#include "mydoc.h"
#include "mydialog.h"
#include "yeardialog.h"
#include "dialogtime.h"
#include "resource.h"
IMPLEMENT_DYNCREATE ( mydoc, CDocument )
BEGIN_MESSAGE_MAP(mydoc,CDocument)
ON_COMMAND_RANGE(40005,40009,oncolor)
ON_COMMAND_RANGE(40005,40010,ontodaybox)
ON_COMMAND(40011,RestoreDefault)
ON_COMMAND(40001,onprevious)
ON_COMMAND(40002,onnext)
ON_COMMAND(40003,oncurrent)
ON_COMMAND(40004,onshow)
ON_COMMAND(40012,onabout)
END_MESSAGE_MAP()
void mydoc::oncolor(int id)
{
CColorDialog cd;
CCalender Cal;
if( cd.DoModal() == IDOK )
{
COLORREF crColor = cd.GetColor();
switch(id)
{
case 40005:
Cal.SetWindowColor(crColor);
break;
case 40006:
Cal.SetMonthsColor(crColor);
break;
case 40007:
Cal.SetWeekdaysColor(crColor);
break;
case 40008:
Cal.SetDaysColor(crColor);
break;
case 40009:
Cal.SetTodayColor(crColor);
break;
case 40010:
Cal.SetTodaysBoxColor(crColor);
break;
}
}
UpdateAllViews(0);
}
void mydoc::RestoreDefault()
{
CCalender Cal;
Cal.SetWindowColor(RGB(255,255,255));
Cal.SetMonthsColor(RGB(0 ,0 ,255));
Cal.SetWeekdaysColor(RGB(0 ,255,0 ));
Cal.SetDaysColor(RGB(255,0 ,0 ));
Cal.SetTodayColor(RGB(255,0 ,0 ));
Cal.SetTodaysBoxColor(RGB(255,255,255));
UpdateAllViews(0);
}
void mydoc::onprevious()
{
Cal.SetYear(Cal.GetYear()-1);
UpdateAllViews(0);
}
void mydoc::onnext()
{
Cal.SetYear(Cal.GetYear()+1);
UpdateAllViews(0);
}
void mydoc::oncurrent()
{
Cal.SetYear(2003);
UpdateAllViews(0);
}
void mydoc::onabout()
{
mydialog d(IDD_DIALOG1);
d.DoModal();
}
void mydoc::onshow()
{
yeardialog d(IDD_DIALOG2);
if( d.DoModal() == IDOK )
{
Cal.SetYear(d.GetYear());
UpdateAllViews(0);
}
}
void mydoc::ontodaybox()
{
DialogTime d(IDD_DIALOG3);
d.DoModal();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -