MFC 界面編輯界面雙擊按鈕添加的回應函式默認是void回傳值型別的,我需要回傳一個BOOL值,如何修改?我試圖自己手動修改Dlg.h檔案和cpp檔案的函式定義和宣告改為BOOL型,但是編譯時BEGIN_MESSAGE_MAP和END_MESSAGE_MAP中間提示錯誤
error C2440: “static_cast”: 無法從“int (__thiscall CBPDlg::* )(void)”轉換為“AFX_PMSG”1> 從基型別到派生型別的強制轉換需要 dynamic_cast 或 static_cast
求解
uj5u.com熱心網友回復:
如果是反射訊息的話, 可以試試 ON_CONTROL_REFLECT_EX父類中的話 試試多載 OnCommand 直接處理
uj5u.com熱心網友回復:
一個按鈕的處理函式,本身回傳void,你回傳BOOL是給誰用?樓主意義在哪里?
uj5u.com熱心網友回復:
封裝一個BOOL型別的函式和一個BOOL型變數。BOOL型的函式放在點擊函式void里面執行,回傳值給這個BOOL型變數。
然后拿著這個BOOL變數參與運算即可。
誠如樓上所言,一個BOOL按鈕函式是沒有必要回傳BOOL值的。
uj5u.com熱心網友回復:
你不應該修改這個回傳值,而是通過別的方式把資料傳遞出去uj5u.com熱心網友回復:
幫頂事件回傳值是特定的意義的
uj5u.com熱心網友回復:
加個 BOOL m_bVar;在 這個變數中 回傳。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/103852.html
標籤:界面
上一篇:讀取顯示幕的EDID
