鼠標(biāo)滾輪消息似乎只會(huì)發(fā)給當(dāng)前獲得焦點(diǎn)的窗口,所以當(dāng)子窗體沒(méi)有焦點(diǎn)時(shí)是收不到滾輪消息的,收到消息的可能是父窗口。
解決:添加鼠標(biāo)單擊相應(yīng)函數(shù),在響應(yīng)函數(shù)中添加SetFoucs();一句,這樣強(qiáng)制設(shè)置焦點(diǎn)給子窗口,然后再滾動(dòng)鼠標(biāo)滾輪,子窗體就能收到滾輪消息了。
問(wèn)題繼續(xù),當(dāng)子窗口上有其他可以獲得焦點(diǎn)的控件時(shí),比如下拉列表,這時(shí)在窗口函數(shù)中執(zhí)行SetFoucs();焦點(diǎn)會(huì)自動(dòng)跑到那個(gè)控件上去,子窗口同樣收不到滾輪消息。
解決:在執(zhí)行SetFoucs();語(yǔ)句前先Disable子窗體上的所有控件,然后執(zhí)行SetFoucs();,再Enanle所有控件,這時(shí)焦點(diǎn)才會(huì)在子窗口上。
本文轉(zhuǎn)自:http://blog.csdn.net/vanship/article/details/4119246
posted on 2014-05-08 16:33
王海光 閱讀(4756)
評(píng)論(0) 編輯 收藏 引用 所屬分類:
MFC