中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

VC++中獲取DC的四種方法

2018-07-20    來源:open-open

容器云強(qiáng)勢(shì)上線!快速搭建集群,上萬Linux鏡像隨意使用
一:

HDC hdc;

hdc=::GetDc(m_hWnd);加兩個(gè)冒號(hào)表示我們用的是全局SDK的函數(shù),否則表示我們有的是CWND中的函數(shù)

::ReleaseDc(m_hWnd,hdc);

二:

CDC *pdc=GetDC();
ReleaseDC(pdc);

三:

CClientDC dc(this);不需要我們?nèi)メ尫牛约簳?huì)去釋放;

四:

CWindowDC dc(this);阤不需要我們?nèi)メ尫,好處是可以訪問整個(gè)屏幕區(qū)域;


關(guān)于dc操作的一段代碼:

CPen pen(PS_SOLID,1,RGB(255,0,0));
CPen *penold;
penold=dc->SelectObject(&pen);

dc->SelectObject(penold);

//設(shè)置字體

CFont font;
VERIFY(font.CreateFont(
12, // nHeight
0, // nWidth
0, // nEscapement
0, // nOrientation
FW_NORMAL, // nWeight
FALSE, // bItalic
FALSE, // bUnderline
0, // cStrikeOut
ANSI_CHARSET, // nCharSet
OUT_DEFAULT_PRECIS, // nOutPrecision
CLIP_DEFAULT_PRECIS, // nClipPrecision
DEFAULT_QUALITY, // nQuality
DEFAULT_PITCH | FF_SWISS, // nPitchAndFamily
"Arial")); // lpszFacename

dc->SelectObject(&font);
dc->SetBkMode(TRANSPARENT);
dc->SetBkColor(COLORREF(RGB(0,0,0)));
dc->SetTextColor(COLORREF(RGB(0,123,0)));
dc->TextOut(TargetPoint.x+5,TargetPoint.y+5,ModeCode);


另一些代碼:

CClientDC dc(pStatusBar);//pStatusBar是一個(gè)狀態(tài)條的窗口
CFont *pOldFont = dc.SelectObject(pStatusBar->GetFont());
CSize size = dc.GetTextExtent(m_strMessage); // Length of text,獲取了字符串的寬度和高度(在目前這種字體下)
int margin = dc.GetTextExtent(_T(" ")).cx * 2; // Text margin,一個(gè)空格的寬度乘以2
dc.SelectObject(pOldFont);

標(biāo)簽: 代碼

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點(diǎn)!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請(qǐng)與原作者聯(lián)系。

上一篇:android實(shí)現(xiàn)截屏功能代碼

下一篇:VC++中獲取句柄的所有方法