獲取字體對話框的值
MFC同樣為我們提供了一個字體對話框類CFontDialog,可以在View類中直接創(chuàng)建該類對象。為了獲取字體對話框的值,需要在View類中建一個CFont類型變量。
01 void CGraphicView::OnFont()
02 {
03 // TODO: Add your command handler code here
04 CFontDialog dlg;
05 if(IDOK==dlg.DoModal())
06 {
07 // m_font為一個CFont變量
08 if(m_font.m_hObject)// 判斷m_font是否已經(jīng)和某個字體資源相關(guān)聯(lián)了
09 m_font.DeleteObject();//如果已經(jīng)關(guān)聯(lián),刪除關(guān)聯(lián)資源
10 m_font.CreateFontIndirect(dlg.m_cf.lpLogFont);
11 m_strFontName=dlg.m_cf.lpLogFont->lfFaceName;
12 }
13 }
繪圖
設(shè)置繪圖的一些參數(shù)之后,便可以開始實現(xiàn)繪圖。將設(shè)置的一些參數(shù)選擇到畫筆,并完成相應(yīng)的圖像繪制。
01 void CGraphicView::OnLButtonUp(UINT nFlags, CPoint point)
02 {
03 CClientDC dc(this);
04 CPen pen(m_nLineStyle,m_nWidth,m_ccr);
05 dc.SelectObject(&pen);
06 CBrush *pBrush=CBrush::FromHandle((HBRUSH)GetStockObject(NULL_BRUSH));//透明畫刷
07 dc.SelectObject(pBrush);
08 //畫點
09 dc.SetPixel(point,m_ccr);
10 //畫線
11 dc.MoveTo(m_pOrigin);
12 dc.LineTo(point);
13 //畫矩形
14 dc.Rectangle(CRect(m_pOrigin,point));
15 //畫橢圓
16 dc.Ellipse(CRect(m_pOrigin,point));
17 }
相關(guān)推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |