9.初期フォントを決める(LOGFONT構造体) |
変数のタイプ | 変数名 | アクセス制御 |
CFont | cViewFont | public |
LOGFONT | lfInit | public |
LOGFONTの初期化 CMyHtmlView::CMyHtmlView() { lfUnit.lfHeight = 18; lfUnit.lfHeight = 18; lfUnit.lfWidth = 8; lfUnit.lfEscapement = 0; lfUnit.lfOrientation = 0; lfUnit.lfWeight = 400; lfUnit.lfItalic = 0; lfUnit.lfUnderline = 0; lfUnit.lfStrikeOut = 0; lfUnit.lfCharSet = 128; lfUnit.lfOutPrecision = 1; lfUnit.lfClipPrecision = 2; lfUnit.lfQuality = 2; lfUnit.lfPitchAndFamily = 2; strcpy(lfUnit.lfFaceName,"FixedSys"); } |
初期フォントの設定 void CMyHtmlView::OnInitialUpdate(){ CEditView::OnInitialUpdate(); cViewFont.DeleteObject(); if(cViewFont.CreateFontIndirect(&lfUnit)) SetFont(&cViewFont); } |
10.フォント変更ダイアログを使おう |
フォントの変更 void CMyHtmlView::OnViewFont(){ LOGFONT lf; cViewFont.GetLogFont(&lf); //フォントダイアログの作成 CFontDialog cDlg(&lf, CF_SCREENFONTS|CF_INITTOLOGFONTSTRUCT); //ダイアログのオープン if (cDlg.DoModal() != IDOK){return ;} //現在のフォントの削除 cViewFont.DeleteObject(); //フォントの作成 if(cViewFont.CreateFontIndirect(&lf)) SetFont(&cViewFont); } |