📄 tabdlgdemoview.cpp
字号:
// TabDlgDemoView.cpp : implementation of the CTabDlgDemoView class
//
#include "stdafx.h"
#include "TabDlgDemo.h"
#include "TabDlgDemoDoc.h"
#include "TabDlgDemoView.h"
#include "TalDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CTabDlgDemoView
IMPLEMENT_DYNCREATE(CTabDlgDemoView, CView)
BEGIN_MESSAGE_MAP(CTabDlgDemoView, CView)
//{{AFX_MSG_MAP(CTabDlgDemoView)
ON_COMMAND(ID_SETFONT, OnSetfont)
ON_COMMAND(ID_SETFONT2, OnSetfont2)
//}}AFX_MSG_MAP
// Standard printing commands
ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview)
ON_MESSAGE(WM_USER_APPLY, OnApply)//添加消息映射
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CTabDlgDemoView construction/destruction
CTabDlgDemoView::CTabDlgDemoView():m_setfontSheet("字体配置")
{
// TODO: add construction code here
// m_setfontSheet("字体配置");
fntColor=RGB(255,0,0); //字体的初始颜色红色
memset(&fnt,0,sizeof(LOGFONT));
fnt.lfHeight=30; //字体初始高度30
strcpy(fnt.lfFaceName,"Arial"); //初始字体类别
}
CTabDlgDemoView::~CTabDlgDemoView()
{
}
BOOL CTabDlgDemoView::PreCreateWindow(CREATESTRUCT& cs)
{
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
return CView::PreCreateWindow(cs);
}
/////////////////////////////////////////////////////////////////////////////
// CTabDlgDemoView drawing
void CTabDlgDemoView::OnDraw(CDC* pDC)
{
CTabDlgDemoDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
pDC->SetTextColor(fntColor); //字体的颜色
CFont myfont;
myfont.CreateFontIndirect(&fnt); //创建字体
pDC->SelectObject(&myfont); //载入字体
pDC->TextOut(50,50,"标签对话框设置字体"); //输出文字
}
/////////////////////////////////////////////////////////////////////////////
// CTabDlgDemoView printing
BOOL CTabDlgDemoView::OnPreparePrinting(CPrintInfo* pInfo)
{
// default preparation
return DoPreparePrinting(pInfo);
}
void CTabDlgDemoView::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
// TODO: add extra initialization before printing
}
void CTabDlgDemoView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
// TODO: add cleanup after printing
}
/////////////////////////////////////////////////////////////////////////////
// CTabDlgDemoView diagnostics
#ifdef _DEBUG
void CTabDlgDemoView::AssertValid() const
{
CView::AssertValid();
}
void CTabDlgDemoView::Dump(CDumpContext& dc) const
{
CView::Dump(dc);
}
CTabDlgDemoDoc* CTabDlgDemoView::GetDocument() // non-debug version is inline
{
ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CTabDlgDemoDoc)));
return (CTabDlgDemoDoc*)m_pDocument;
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
// CTabDlgDemoView message handlers
void CTabDlgDemoView::OnSetfont()
{
// TODO: Add your command handler code here
CTalDlg dlg;
if(dlg.DoModal()==IDOK)//调用属性表对话框
{
fntColor=dlg.fntColor;//获取颜色
fnt.lfHeight=dlg.m_height;//获取字号
Invalidate(true);//重绘窗口,调用OnDraw函数
}
}
void CTabDlgDemoView::OnSetfont2()
{
// TODO: Add your command handler code here
m_setfontSheet.DoModal();
}
void CTabDlgDemoView::OnApply(WPARAM wParam, LPARAM lParam)
{
//CColorTab* tab1=(CColorTab*)m_setfontSheet.GetPage(0);
// tab1->UpdatedateData(true);//获取颜色标签页数据
m_setfontSheet.m_colorPage.UpdateData(true);
switch(m_setfontSheet.m_colorPage.m_radio)
{
case 0:
fntColor=RGB(255,0,0);//红色
break;
case 1:
fntColor=RGB(0,255,0);//绿色
break;
case 2:
fntColor=RGB(0,0,255);//蓝色
break;
case 3:
fntColor=RGB(m_setfontSheet.m_colorPage.m_r,m_setfontSheet.m_colorPage.m_g,m_setfontSheet.m_colorPage.m_b);//自定义颜色
break;
}
// CFontTab* tab2=(CFontTab*)m_setfontSheet.GetPage(1);
// tab2->UpdatedateData(true);//获取字号标签页数据
switch(m_setfontSheet.m_fontPage.m_radio)
{
case 0:
fnt.lfHeight=60;//大号
break;
case 1:
fnt.lfHeight=30;//中号
break;
case 2:
fnt.lfHeight=15;//小号
break;
case 3:
fnt.lfHeight=m_setfontSheet.m_fontPage.m_height;//自定义字号
break;
}
Invalidate(true);//重绘窗口,调用OnDraw函数
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -