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

山寨:不是最好的,是最適合我們的!歡迎體驗(yàn)山寨 中文版MSDN

Blog @ Blog

當(dāng)華美的葉片落盡,生命的脈絡(luò)才歷歷可見。 -- 聶魯達(dá)

常用鏈接

統(tǒng)計(jì)

積分與排名

BBS

Blog

Web

最新評論

VC++之隨父窗口變化調(diào)整控件大小

如果對話框或視類的大小調(diào)后,控件的大小和位置沒有變化,界面看起來會很不爽
控件是從CWnd派生的,但不能使用SetWindowPos()或OnSize()或OnSizing()來改變其大小,應(yīng)在父窗口的WM_SIZE消息中使用MoveWindow()來進(jìn)行調(diào)整。

VC++之根據(jù)對話框大小調(diào)整控件大小
1、在對話框類中加入成員變量CRect m_rect;用于保存對話框大小變化前的大小;
2、在對話框的OnInitDialog()函數(shù)中獲取對話框創(chuàng)建時的大小:GetClientRect(&m_rect);
3、在WM_SIZE的響應(yīng)函數(shù)OnSize()中加入以下代碼:
 

CWnd *pWnd;
 pWnd 
= GetDlgItem(IDC_LIST);     //獲取控件句柄
 if(pWnd)//判斷是否為空,因?yàn)閷υ捒騽?chuàng)建時會調(diào)用此函數(shù),而當(dāng)時控件還未創(chuàng)建
 {
  CRect rect;   
//獲取控件變化前大小
  pWnd->GetWindowRect(&rect);
  ScreenToClient(
&rect);//將控件大小轉(zhuǎn)換為在對話框中的區(qū)域坐標(biāo)
  
// cx/m_rect.Width()為對話框在橫向的變化比例
  rect.left=rect.left*cx/m_rect.Width();/////調(diào)整控件大小
  rect.right=rect.right*cx/m_rect.Width();
  rect.top
=rect.top*cy/m_rect.Height();
  rect.bottom
=rect.bottom*cy/m_rect.Height();
  pWnd
->MoveWindow(rect);//設(shè)置控件大小
 }

 GetClientRect(
&m_rect);//將變化后的對話框大小設(shè)為舊大小

示例代碼

posted on 2008-04-14 17:46 isabc 閱讀(6299) 評論(10)  編輯 收藏 引用

評論

# re: VC++之隨父窗口變化調(diào)整控件大小 2008-08-15 19:17 fly931

解決一個BUG:
加上 if(nType!=1){}
或者 if(nType!=SIZE_MINIMIZED ){}
不然窗口最小化后再恢復(fù)就產(chǎn)生BUG(整數(shù)除以0)  回復(fù)  更多評論   

# re: VC++之隨父窗口變化調(diào)整控件大小[未登錄] 2008-08-15 19:52 isabc

謝謝!@fly931
  回復(fù)  更多評論   

# re: VC++之隨父窗口變化調(diào)整控件大小 2008-11-23 16:05 lauren

學(xué)習(xí)了  回復(fù)  更多評論   

# re: VC++之隨父窗口變化調(diào)整控件大小 2008-12-08 17:23 hgds

在某些系統(tǒng)下不能實(shí)現(xiàn)。  回復(fù)  更多評論   

# re: VC++之隨父窗口變化調(diào)整控件大小 2009-02-28 18:22 wxa

請問為什么在我的FormView窗口中實(shí)現(xiàn)怎么不行?
void CMyAppView::OnSize(UINT nType, int cx, int cy)
{
CFormView::OnSize(nType, cx, cy);

CWnd *pWnd;
pWnd = GetDlgItem(IDC_LIST); //獲取控件句柄
if(pWnd)//判斷是否為空,因?yàn)閷υ捒騽?chuàng)建時會調(diào)用此函數(shù),而當(dāng)時控件還未創(chuàng)建
{
CRect rect; //獲取控件變化前大小
pWnd->GetWindowRect(&rect);
ScreenToClient(&rect);//將控件大小轉(zhuǎn)換為在對話框中的區(qū)域坐標(biāo)
// cx/m_rect.Width()為對話框在橫向的變化比例
rect.left=rect.left*cx/m_rect.Width();/**//////調(diào)整控件大小
rect.right=rect.right*cx/m_rect.Width();
rect.top=rect.top*cy/m_rect.Height();
rect.bottom=rect.bottom*cy/m_rect.Height();
pWnd->MoveWindow(rect);//設(shè)置控件大小
}

GetClientRect(&m_rect);//將變化后的對話框大小設(shè)為舊大小
}

運(yùn)行時候報異常呀,請幫看看  回復(fù)  更多評論   

# re: VC++之隨父窗口變化調(diào)整控件大小 2009-03-03 12:14 guest

如果有多個控件,難道也要GetDlgItem(IDC_XXXX),然后對其操作嗎?那不是很麻煩  回復(fù)  更多評論   

# re: VC++之隨父窗口變化調(diào)整控件大小 2009-08-01 00:10 www

謝謝樓主啦!
幫我解決了一個實(shí)際問題!
樓上的,如果你有多個控件,可以找下控件ID的定義,然后用一個For就搞定了,我的十幾個控件都搞定了。
另外也要注意一樓所講的Bug,同時也要謝謝一樓的提醒!  回復(fù)  更多評論   

# re: VC++之隨父窗口變化調(diào)整控件大小 2011-02-23 18:59 512826028

請問樓上,你的那個是怎么用For實(shí)現(xiàn)的呢?
小弟不知。  回復(fù)  更多評論   

# re: VC++之隨父窗口變化調(diào)整控件大小[未登錄] 2011-03-21 20:04 a

@512826028
樓上的,表驅(qū)動  回復(fù)  更多評論   

# re: VC++之隨父窗口變化調(diào)整控件大小 2012-01-04 13:48 藝搜天下

謝謝博主!
也幫我解決了一個實(shí)際問題!  回復(fù)  更多評論   


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


廣告信息(免費(fèi)廣告聯(lián)系)

中文版MSDN:
歡迎體驗(yàn)

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美一区二视频在线免费观看| 亚洲国产精品久久久| 一区二区三区欧美激情| 午夜日韩激情| 亚洲高清视频在线观看| 午夜精品短视频| 亚洲影院污污.| 欧美激情一区二区三区在线| 国产色婷婷国产综合在线理论片a| 亚洲美女在线看| 美女国产一区| 性欧美办公室18xxxxhd| 国产精品高精视频免费| 亚洲最新视频在线播放| 亚洲区一区二区三区| 卡通动漫国产精品| 曰韩精品一区二区| 狼人天天伊人久久| 精品成人国产| 欧美成人r级一区二区三区| 国产一级揄自揄精品视频| 久久成人18免费观看| 亚洲免费在线视频| 国产精品每日更新| 亚洲欧美www| 亚洲永久免费| 国产日产高清欧美一区二区三区| 亚洲欧美综合另类中字| 久久亚洲一区二区| 久久亚洲精品欧美| 亚洲国产精品久久人人爱蜜臀| 免费成人性网站| 欧美二区在线观看| 中文在线资源观看网站视频免费不卡 | 久久精品免费播放| 99re8这里有精品热视频免费| 亚洲欧美一区二区三区极速播放| 国产伦精品一区二区三区免费 | 99在线|亚洲一区二区| 亚洲欧洲精品一区二区三区| 欧美激情视频网站| 在线视频日韩| 欧美韩日一区二区| 欧美色欧美亚洲高清在线视频| 亚洲少妇最新在线视频| 亚洲一区免费| 在线高清一区| 一本久久综合亚洲鲁鲁| 国产精品欧美日韩一区| 久久久久久亚洲精品杨幂换脸| 开元免费观看欧美电视剧网站| 亚洲免费高清视频| 亚洲欧美日韩综合| 亚洲日本理论电影| 亚洲欧美99| 亚洲国产精品传媒在线观看| 99www免费人成精品| 国产在线乱码一区二区三区| 亚洲福利国产| 国产视频一区二区在线观看 | 免费在线国产精品| 亚洲欧美影院| 欧美国产日韩视频| 性欧美8khd高清极品| 久久综合狠狠综合久久激情| 亚洲永久在线观看| 欧美成人一品| 久久久久久久久一区二区| 欧美激情1区2区3区| 欧美一区二区三区四区在线观看地址| 免费短视频成人日韩| 性做久久久久久久免费看| 欧美成人精品不卡视频在线观看| 欧美一区二粉嫩精品国产一线天| 亚洲女性喷水在线观看一区| 亚洲看片一区| 欧美激情第三页| 亚洲欧美色一区| 欧美精品成人| 欧美激情第三页| 狠狠入ady亚洲精品| 99热在线精品观看| 亚洲另类自拍| 麻豆精品网站| 麻豆精品在线视频| 国产在线一区二区三区四区| 在线亚洲美日韩| 国产精品99久久久久久久久| 久久久久久久综合| 久久亚洲综合| 黑人巨大精品欧美黑白配亚洲| 亚洲一级高清| 亚洲男人第一av网站| 欧美日韩精品系列| 国产精品一二三| 国产精品99久久久久久白浆小说| 久久一区二区三区国产精品| 欧美在线免费观看视频| 欧美一区二区精品| 欧美日韩精选| 亚洲毛片在线看| 蜜臀av在线播放一区二区三区| 欧美成人激情视频| 亚洲美女色禁图| 欧美成人精品在线| 国外成人在线| 久久综合给合| 老鸭窝亚洲一区二区三区| 亚洲伦伦在线| 久久手机免费观看| 亚洲一区二区免费| 欧美三级视频在线| 亚洲欧美日韩直播| 午夜精品影院| 亚洲欧洲在线视频| 亚洲午夜未删减在线观看| 狠狠色狠狠色综合日日tαg| 国产日韩欧美精品| 在线观看一区二区视频| 狂野欧美激情性xxxx| 久久影视精品| 国产精品久久久久久久久久尿 | 久久国产精品久久国产精品| 欧美三级欧美一级| 国产精品一区二区三区乱码| 亚洲每日更新| 久久精品夜色噜噜亚洲a∨| 久久精品人人爽| 亚洲精品影院| 精品福利av| 激情久久久久久| 麻豆精品在线播放| 在线亚洲一区| 亚洲自拍偷拍福利| 一区二区三区视频在线| 国产欧美一区二区三区在线老狼| 精品不卡一区| 久久精品国产99| 欧美一区二区三区在线免费观看| 欧美成人精品激情在线观看| 欧美专区18| 午夜精品久久久久久久99樱桃| 久久精品在线播放| 免费在线亚洲欧美| 日韩网站在线看片你懂的| 亚洲欧洲久久| 国产亚洲一区二区在线观看 | 久久久久国产一区二区三区四区| 欧美成人精品1314www| 亚洲专区一区| 亚洲欧美日韩国产一区| av成人国产| 99精品久久久| 久久影视精品| 国产精品久久久久久久久久免费看| 久久久久久久久综合| 欧美精品一区三区| 性欧美18~19sex高清播放| 久久精品视频在线播放| 永久555www成人免费| 欧美激情在线播放| 怡红院精品视频| 久久琪琪电影院| 美国十次成人| 国产精品美女久久福利网站| 欧美一级欧美一级在线播放| 在线观看成人一级片| 一区二区三区国产在线| 香蕉久久一区二区不卡无毒影院| 国产精品福利av| 久久激情网站| 亚洲福利视频专区| 亚洲欧美日本日韩| 欧美一级理论片| 欧美日韩午夜在线视频| 一本色道久久加勒比88综合| 亚洲午夜黄色| 国产欧美大片| 亚洲精品一区二区三区99| 裸体女人亚洲精品一区| 午夜精品理论片| 久久精品一本| 一本色道久久综合亚洲91| 欧美日韩二区三区| 久久视频一区| 亚洲欧美一级二级三级| 免费观看亚洲视频大全| 亚洲在线视频一区| 尤物yw午夜国产精品视频| 一片黄亚洲嫩模| 国产乱理伦片在线观看夜一区| 欧美夜福利tv在线| 免播放器亚洲一区| 久久gogo国模裸体人体| 亚洲国产一区视频| 国产欧美日韩免费| 亚洲视频在线视频| 国产精品萝li| 国产日韩久久| 99riav国产精品|