青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 29,comments - 10,trackbacks - 0
 

MFCDC(設備描述環(huán)境)和一些GDI函數填充裝到一起,形成了一個DCD.

CDC
類中的一些常用的成員函數
函數 說明
Arc()
畫橢圓弧
BitBlt()
把一個DC中的位圖自制到另一個DC
Ellipse()
畫橢圓
FillRect()
用指定的畫刷填充矩形
LineTo()
畫直線
MoveTo()
移動畫筆
Rectangle()
畫矩形
RoundRect()
畫圓角矩形
SelectObject()
選擇GDI的繪圖對象
SetTextColor()
設置文本顏色
StretchBlt()
把一個DC中的位圖自制到另一個DC中但可以改變位圖的長寬比
TextOut()
繪制字符串

一、幾種派生的CDC
類名 說明
      CClientDC
在相應除WM_PAINT消息之外的消息處理函數中提供窗口客戶區(qū)的設備描述環(huán)境

void CAaaView::OnLButtonDown(UINT nFlags, CPoint point) 
{
    
// TODO: Add your message handler code here and/or call default
    CClientDC dc(this);
    RECT rc 
= {50,50,250,150};
    dc.Ellipse(
&rc);
    CView::OnLButtonDown(nFlags, point);
}

      CMetaFileDC 代表Windows圖元文件的設備描述環(huán)境,在創(chuàng)建與設備無關的并且可以回放的圖像時使用這個類型的DC
      CPaintDC
OnDraw() 函數中使用的窗口用戶區(qū)的設備描述環(huán)境,MFC中用OnDraw()函數來處理WM_PAINT消息。和WM_PAINT消息關聯,當某一窗口需要繪圖時,這個消息就發(fā)給這個窗口,它在窗口的OnPaint成員函數中使用,其構造函數自動調用BeginPaint,而析構函數自動調用EndPaint。這些都有Windows自動完成。我們要做的就是在CPaintDC對象上畫圖。

void CAaaView::OnPaint() 
{    
    CPaintDC dc(
this);     //  創(chuàng)建一個對象
    RECT rc = {50,50,150,150};    //  設定坐標
    dc.Rectangle(&rc);    //  繪制矩形
}

      CWindowDC 提供在整個窗口內(不只是用戶區(qū))繪圖的設備描述環(huán)境 .

 void CAaaView::OnLButtonUp(UINT nFlags, CPoint point) 
{
    
// TODO: Add your message handler code here and/or call default
    CWindowDC dc(this);
    RECT rc 
= {50,50,250,150};
    dc.Ellipse(
&rc);
    CView::OnLButtonUp(nFlags, point);
}

二、字體描述
1、TEXTMETRIC
void CCFontInfoView::OnDraw(CDC* pDC)
{
    CCFontInfoDoc
* pDoc = GetDocument();
    ASSERT_VALID(pDoc);
    
// TODO: add draw code for native data here
    TEXTMETRIC tm;
    CString strFontInfo;
    pDC
->GetTextMetrics(&tm);
    strFontInfo.Format(
"以下是當前字體的基本信息!");
    pDC
->TextOut(1010, strFontInfo);
    strFontInfo.Format(
"tmHeight = %d",tm.tmHeight);
    pDC
->TextOut(1030, strFontInfo);
}

2、LOGFONT
void CCFontInfoView::OnMyCreateFont() 
{
    
// TODO: Add your command handler code here
    
//CCFontInfoDoc* pDoc = GetDocument();
    
//ASSERT_VALID(pDoc);

    CDC
* pDC = this->GetDC();
    CString strLogFont;
    LOGFONT lFont 
= {20,    //字符單元或字符的邏輯高度
                     20,        // 字符單元或字符的邏輯寬度
                     10,        // 走格矢量與設備的X軸之間的夾角
                     10,        // 每個字符的基線與設備的X軸之間的夾角
                     555,    // 字體的灰度
                     1,        // 為斜體字體
                     1,        // 帶下畫線的字體
                     1,        // 帶刪除線的字體
                     10,        // 字體的符集
                     10,        // 字體的輸出精度
                     10,        // 字體的裁減精度
                     10,        // 字體的輸出質量
                     10,        // 字體的間距和系列
                     ""}
;    // 字體的字樣名
    CFont m_Font;
    m_Font.CreateFontIndirect(
&lFont);
    CFont
* pOldFont = pDC->SelectObject(&m_Font);
    strLogFont 
= "第三章  多媒體文本處理";
    pDC
->TextOut(10,300,strLogFont);
}

三、創(chuàng)建各種字體:

1HFONT CreateFontIndirect(CONST LOGFONT *lplf)

lplf:指向定義此邏輯字體特性的LOGFONT結構的指針。

返回值:如果函數調用成功,返回值是邏輯字體的句柄;如果函數調用失敗,返回值是NULL

例子看LOGFONT例子部分

2HFONT CreateFont(int nHeight, int nWidth, int nEscapement, int nOrientation, int fnWeight, DWORD fdwltalic, DWORD fdwUnderline, DWORD fdwStrikeOut, DWORD fdwCharSet, DWORD fdwOutputPrecision, DWORD fdwClipPrecision, DWORD fdwQuality, DWORD fdwPitchAndFamily, LPCTSTR lpszFace)

 參數說明:http://baike.baidu.com/view/1080748.htm

void CCFontInfoView::On310() 
{
    
// TODO: Add your command handler code here
    CDC* pDC = this->GetDC();

    CFont m_Font;
    m_Font.CreateFont(
30,0,10,10,1, FALSE, TRUE, FALSE, ANSI_CHARSET,
                    OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, 
    PROOF_QUALITY,DEFAULT_PITCH 
+ FF_DONTCARE, "Arial");
    CFont
* pOldFont = pDC->SelectObject(&m_Font);
    pDC
->TextOut(10,350,"第三章  多媒體文本處理");
}

3CFont::CreatePointFont

BOOL CreatePointFont(int nPointSize, LPCTSTR lpszFaceName, CDC* pDC = NULL);

返回值:如果成功,則返回非零值,否則為0

參數:

nPointSize

所需字體高度(用0.1點表示,例如,傳遞120表示12點字體)。

lpszFaceName

一個CString或指向一個以空終止符結尾的字符串,定義字體名稱。此字符串長度不應超過30個字符。Windows EnumFontFamilies函數可用于計算當前可用字體的總數。如果為NULL,則GDI使用與設備無關的字體。

pDC

指向CDC對象,將nPointSize中的高度轉化為邏輯單位。如果為NULL,則屏幕設備上下文用于轉換。


說明:
此函數提供了一種創(chuàng)建指定字體和點大小的字體對象的方法,它自動將nPointSize中的高度轉化為邏輯單位,這是使用由pDC指向的CDC對象實現的。
當完成用CreatePointFont函數創(chuàng)建CFont對象后,從設備上下文中選擇字體,然后刪除CFont對象。

void CCFontInfoView::On311() 
{
    
// TODO: Add your command handler code here
    CDC* pDC = this->GetDC();

    CFont m_Font;
    m_Font.CreatePointFont(
320"Arial", pDC);
    CFont
* pOldFont = pDC->SelectObject(&m_Font);
    pDC
->TextOut(10,250,"第三章  多媒體文本處理");

}

4CFont::CreatePointFontIndirect

BOOL CreatePointFontIndirect(const LOGFONT* lpLogFont, CDC* pDC = NULL);

返回值:如果成功,則返回非零值,否則為0

參數:

lpLogFont

指向LOGFONT結構,定義邏輯字體特征。LOGFONTlfHeight成員用0.1點計算而不用邏輯單位(如果設置lfHeight120,則要求12點字體)。

pDC

指向CDC對象,用于將lfHeight中的高度轉化為邏輯單位。如果為NULL,屏幕設備上下文用于轉換。


說明:
此函數與CreateFontIndirect相似,但LOGFONTlfHeight成員由0.1點表示而不是用設備單位表示。在傳遞LOGFONT結構到Windows之前,pDC指向的CDC對象自動使函數的lfHeight中的高度轉化為邏輯單位。
當完成由CreatePointFontIndirect函數創(chuàng)建的CFont對象之后,先選擇設備上下文字體,然后刪去CFont對象。

void CCFontInfoView::On312() 
{
    
// TODO: Add your command handler code here
    CDC* pDC = this->GetDC();

    LOGFONT lf;
    memset(
&lf, 0sizeof(LOGFONT));  // 清空LOGFONT 結構
    lf.lfHeight = 200;    // 設置 LOGFONT 結構
    lf.lfWeight = 700;  
    strcpy(lf.lfFaceName, 
"Arial");
    CFont font;
    font.CreatePointFontIndirect(
&lf, pDC);   
    
    CFont
* pOldFont = pDC->SelectObject(&font);
    pDC
->TextOut(460,260,"第三章  多媒體文本處理");

}

四、文本控件的使用
1、靜態(tài)文本控件
void CStaticTextDlg::OnButton() 
{
    
// TODO: Add your control notification handler code here
    m_strStaticText = "再見!";  // 設置要顯示的內容
    UpdateData(FALSE);    // 在靜態(tài)文本框中顯示結果

}
2使用編輯框控件
void CStaticTextDlg::OnButton2() 
{
    
// TODO: Add your control notification handler code here
    UpdateData(TRUE);   // 接受輸入的信息
    m_strDisplay = m_strReceive;     //  賦值
    UpdateData(FALSE);   // 輸出得到的信息

}
posted on 2009-06-21 13:19 The_Moment 閱讀(932) 評論(0)  編輯 收藏 引用 所屬分類: VC理論
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            午夜一区在线| 99精品国产在热久久| 欧美一区二区三区免费观看视频| 日韩亚洲综合在线| 日韩小视频在线观看专区| 亚洲精品乱码久久久久久按摩观| 欧美电影免费观看高清| 亚洲成人在线视频播放| 久久亚洲综合色| 免费在线亚洲| 亚洲精品视频一区| 亚洲欧美日本视频在线观看| 欧美综合第一页| 久久gogo国模裸体人体| 久久av二区| 久热精品视频在线| 欧美国产精品专区| 在线一区观看| 久久综合色天天久久综合图片| 女人香蕉久久**毛片精品| 欧美精品在线观看一区二区| 国产精品视频999| 亚洲第一综合天堂另类专| 亚洲一本大道在线| 美日韩丰满少妇在线观看| 一区二区av在线| 久久久7777| 国产精品亚洲аv天堂网| 亚洲国产成人不卡| 久久99伊人| 日韩视频不卡| 久久久久久亚洲精品不卡4k岛国| 欧美日韩精品免费| ●精品国产综合乱码久久久久| 亚洲欧美日韩国产综合| 亚洲国产精品一区在线观看不卡 | 国产区日韩欧美| 亚洲精品综合精品自拍| 久久人人97超碰人人澡爱香蕉| 一区二区三区久久精品| 欧美顶级艳妇交换群宴| 激情五月***国产精品| 亚洲在线成人精品| 亚洲精品在线免费观看视频| 久久婷婷国产麻豆91天堂| 国产欧美在线视频| 亚洲无吗在线| 亚洲精品在线观看视频| 欧美高清在线播放| 亚洲国产精品黑人久久久| 久久这里只有精品视频首页| 亚洲欧美日韩久久精品| 国产精品男人爽免费视频1| 在线中文字幕不卡| 亚洲精品视频在线播放| 欧美成人激情视频| 亚洲日产国产精品| 亚洲欧洲日韩在线| 欧美精品一区二区久久婷婷| 亚洲国产欧美精品| 欧美国产精品久久| 美国十次成人| 亚洲精品一二三| 亚洲久久一区二区| 国产精品久久久久久久久久久久 | 亚洲欧美日韩精品在线| 国产精品大片| 国产精品第三页| 亚洲国产日日夜夜| 亚洲一区观看| 亚洲精品看片| 美日韩在线观看| 在线成人国产| 欧美成熟视频| 欧美日韩麻豆| 欧美一区中文字幕| 久久久99久久精品女同性| 永久免费毛片在线播放不卡| 欧美成人嫩草网站| 欧美另类69精品久久久久9999| 一区二区三区国产精品| 亚洲一二三区视频在线观看| 国产亚洲欧美日韩精品| 欧美二区视频| 国产精品成人v| 久久伊人免费视频| 欧美日韩岛国| 久久久在线视频| 欧美日韩国产另类不卡| 久久成人免费| 欧美日本亚洲韩国国产| 久久国产高清| 欧美精品一区二| 久久国产夜色精品鲁鲁99| 久久躁日日躁aaaaxxxx| 亚洲一区二区三区精品在线| 久久久久国产精品人| 亚洲专区一区二区三区| 久久夜色撩人精品| 亚洲午夜三级在线| 久久婷婷一区| 久久成人免费日本黄色| 欧美色视频在线| 亚洲电影免费观看高清完整版在线| 欧美视频你懂的| 欧美激情bt| 国产一区二区成人| 亚洲午夜一区二区| 久久人人精品| 欧美精品激情| 欧美 日韩 国产 一区| 国产精品久久久久永久免费观看 | 欧美成人国产| 国产一区二区高清不卡| 在线视频精品一区| 一本色道久久加勒比精品| 久久久久久久久久看片| 翔田千里一区二区| 欧美日韩三级视频| 欧美日本韩国一区| 美女图片一区二区| 午夜宅男欧美| 欧美日本韩国一区| 欧美激情一级片一区二区| 国产日本欧美在线观看| 一区二区免费在线播放| 一区二区三区高清在线| 欧美岛国在线观看| 欧美激情在线免费观看| 在线欧美视频| 麻豆成人综合网| 欧美成年视频| 亚洲欧洲一二三| 欧美国产视频在线| 亚洲精品欧美日韩| 99综合在线| 国产一区二区三区免费在线观看 | 亚洲精品少妇网址| 亚洲精品午夜| 欧美日韩国产一区二区| 亚洲人成网在线播放| 亚洲日本在线视频观看| 欧美精品在线视频观看| 日韩亚洲欧美成人一区| 亚洲视频一二| 国产精品毛片a∨一区二区三区| 99视频精品| 午夜精品久久久久久久久| 国产区二精品视| 久久亚洲精品一区二区| 亚洲国产婷婷香蕉久久久久久| 亚洲伦理在线观看| 欧美日韩在线观看视频| 亚洲免费中文字幕| 久久综合色综合88| 日韩亚洲欧美成人一区| 国产精品久久久久久久久久免费| 亚洲综合欧美| 老色鬼久久亚洲一区二区| 亚洲精品久久久蜜桃| 国产精品国产三级国产| 欧美有码视频| 亚洲国产精品va在线看黑人| 亚洲一区二区三区在线看| 国产一区二区三区黄视频| 欧美成年人视频网站欧美| 亚洲神马久久| 欧美成人xxx| 亚洲综合999| 在线观看91精品国产入口| 欧美日韩视频在线一区二区 | 国产精品久久久久秋霞鲁丝| 欧美一区二区视频在线| 亚洲激情女人| 久久久99国产精品免费| 亚洲伦理一区| 国产一区视频网站| 欧美日韩一卡| 另类国产ts人妖高潮视频| 夜夜嗨av一区二区三区四区 | 国产精品资源| 免费观看亚洲视频大全| 亚洲少妇在线| 国产一区二区三区在线观看免费视频 | 亚洲日本va午夜在线电影| 欧美精品日韩综合在线| 欧美在线观看一区| 日韩视频专区| 久久综合中文色婷婷| 亚洲女同精品视频| 亚洲肉体裸体xxxx137| 国产亚洲成av人在线观看导航| 欧美激情2020午夜免费观看| 久久精品一区中文字幕| 午夜精品久久久99热福利| 99国内精品久久久久久久软件| 欧美成人乱码一区二区三区| 久久人91精品久久久久久不卡 | 欧美激情一区二区三区| 久久久久国产精品厨房|