解決C++中事件不響應(yīng)的方法詳解
更新時間:2013年05月16日 11:01:31 作者:
本篇文章是對C++事件不響應(yīng)的解決方法進行了詳細(xì)的分析介紹,需要的朋友參考下
在C++開發(fā)過程由于這樣那樣的原因,可以會出現(xiàn)點擊菜單、右鍵菜單無響應(yīng)的問題,或者點擊A菜單,但是響應(yīng)的卻是B菜單。遇到上述問題時,你可以從下面幾個方面分析,一般都可以解決問題。下面從四個方面來解決問題:
1、檢查菜單ID對于的事件映射表是否存在,如果不存在肯定不會響應(yīng)
2、檢查菜單ID與其它菜單ID是否出現(xiàn)重復(fù),如果出現(xiàn)重復(fù)可能出現(xiàn)張冠李戴的現(xiàn)象(點擊A菜單,但是響應(yīng)B菜單的行為)
3、菜單ID與對應(yīng)菜單事件的映射表ID是否一致,可能出現(xiàn)菜單ID與事件映射表的ID不一致
4、在Qt中,要注意信號函數(shù)是否忘記寫括號:
connect(underBtn,SIGNAL(clicked()),this,SLOT(slotUnder()));
如果出現(xiàn)SLOT(slotUnder())中的slotUnder函數(shù)忘記寫括號,也會出現(xiàn)事件無法響應(yīng)的問題。
對于第四點,MFC、wxwidgets也會出現(xiàn)類似的問題
1、檢查菜單ID對于的事件映射表是否存在,如果不存在肯定不會響應(yīng)
2、檢查菜單ID與其它菜單ID是否出現(xiàn)重復(fù),如果出現(xiàn)重復(fù)可能出現(xiàn)張冠李戴的現(xiàn)象(點擊A菜單,但是響應(yīng)B菜單的行為)
3、菜單ID與對應(yīng)菜單事件的映射表ID是否一致,可能出現(xiàn)菜單ID與事件映射表的ID不一致
4、在Qt中,要注意信號函數(shù)是否忘記寫括號:
connect(underBtn,SIGNAL(clicked()),this,SLOT(slotUnder()));
如果出現(xiàn)SLOT(slotUnder())中的slotUnder函數(shù)忘記寫括號,也會出現(xiàn)事件無法響應(yīng)的問題。
對于第四點,MFC、wxwidgets也會出現(xiàn)類似的問題
相關(guān)文章
C語言編程數(shù)據(jù)在內(nèi)存中的存儲詳解
本篇文章是C語言編程篇,主要為大家介紹C語言編程中數(shù)據(jù)在內(nèi)存中存儲解析,有需要的朋友可以借鑒參考下,希望可以有所幫助2021-09-09C++根據(jù)傳入的函數(shù)指針來解析需要的參數(shù)(推薦)
C++可以根據(jù)傳入的函數(shù)指針,獲取自己需要的參數(shù)類型,然后根據(jù)參數(shù)源中獲取需要的參數(shù),具體實現(xiàn)方式大家參考下本文2018-05-05對for循環(huán)中表達(dá)式和循環(huán)體的執(zhí)行順序詳解
今天小編就為大家分享一篇對for循環(huán)中表達(dá)式和循環(huán)體的執(zhí)行順序詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-06-06