視窗父子關系 如下:
對話框->按鈕
按鈕動態創建,在對話框的成員變數里有一個CButton物件與之關聯,添加按鈕的BN_CLICKED訊息回應函式,正常回應
父子關系改成如下:
對話框->分組框->按鈕
在對話框類中添加回應函式就沒有回應了,是不是分組框把這個訊息截走了?
如果這樣,該怎么處理,不想把分組框再繼承一個子類,然后再訊息映射
有沒有什么辦法,讓分組框的訊息再轉到對話框上去
uj5u.com熱心網友回復:
sendmessage向需要的視窗發送訊息。uj5u.com熱心網友回復:
要么你就不要設定CButton的父為分組,控制元件通知只會傳遞到父類,你可以把CButton的父設為對話框,要么你在組合框收到BN_CLICKED后轉發給Dialog,通過pDialog->SendMessage(WM_COMMAND,MAKEWPARAM(IDC_BUTTON,BN_CLICKED),0);uj5u.com熱心網友回復:
那我在哪里呼叫此函式,應該還是要多載 組合框 的 OnClick 函式吧?
uj5u.com熱心網友回復:
對的,在組合框中先做ON_BN_CLICKED回應,然后轉發給Dialog
uj5u.com熱心網友回復:
我不是還要添加一個從組合框中繼承的新類?關鍵是不想這樣做,有沒有什么機制讓父視窗直接把訊息再傳給他自己的父視窗?uj5u.com熱心網友回復:
還有一個更扯的現象,如下父子結構對話框->組合框->radio,win7下正常
到了XP下如果使用經典風格也正常

經典風格下
但使用XP風格

XP風格下
是不是精簡版的XP主題有什么問題,我用的VS2013
uj5u.com熱心網友回復:
沒有人遇到這種情況么?轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/125131.html
標籤:基礎類
上一篇:攝像頭上位機代碼
