第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問關(guān)于CView某個函數(shù)里加入CDC* pDC=GetDC()后畫圖問題?

請問關(guān)于CView某個函數(shù)里加入CDC* pDC=GetDC()后畫圖問題?

收到一只叮咚 2019-09-23 20:16:05
CView某個函數(shù)里加入CDC* pDC=GetDC()后畫圖,為什么界面大小一變圖就消失了?
查看完整描述

3 回答

?
LEATH

TA貢獻1936條經(jīng)驗 獲得超7個贊

界面大小改變,會發(fā)送窗口區(qū)無效的命令,也就是WM_PAINT,然后會導(dǎo)致窗口進行重繪。然后系統(tǒng)響應(yīng)這個消息的順序通常是:先調(diào)用OnPaint(消息處理函數(shù)),然后在OnPaint里面調(diào)用OnDraw(不是消息相應(yīng)函數(shù))函數(shù),所以如果你想讓窗口改變以后你的圖像還在,那么你應(yīng)該講繪圖的命令寫在OnDraw函數(shù)里面,或者說干脆直接重載一遍OnDraw函數(shù),然后根據(jù)自己的意愿任意繪圖

查看完整回答
反對 回復(fù) 2019-09-25
?
森欄

TA貢獻1810條經(jīng)驗 獲得超5個贊

你如何添加的 ,是不是下面這樣子,沒問題啊
void CTestzhidaodlgDlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // device context for painting

SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

// Center icon in client rectangle
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;

// Draw the icon
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialog::OnPaint();
}
static int i=0;
CDC *pDC=GetDC();
if(i==1)
pDC->Rectangle(0,0,100,100);
i++;
ReleaseDC(pDC);

}




查看完整回答
反對 回復(fù) 2019-09-25
  • 3 回答
  • 0 關(guān)注
  • 606 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號