[問題] 由MFC按鈕呼叫執行class內的內容

看板C_and_CPP (C/C++)作者 (トースト)時間10年前 (2015/12/04 02:38), 編輯推噓3(3010)
留言13則, 4人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) VS2008 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): MFC專案中的按鈕無法執行由include併入的class 餵入的資料(Input): 預期的正確結果(Expected Output): 可經由Dialog上的按鈕或藉由輸入等方式執行include進來的class 錯誤結果(Wrong Output): 有些按鈕無反應 程式碼(Code):(請善用置底文網頁, 記得排版) ///class ABC:所有欲執行功能的類別,由include方式合併至MFC專案中 class ABC{ void one(int Num); void two(void); void three(void); .... } //以下為MFC Dialog 下的按鈕內容 void CControl_UIDlg::OnEnChangeEdit1() { //由使用者輸入int變數Num } void CControl_UIDlg::OnBnClickedButton1() { UpdateData(); //更新由Edit1所輸入的變數Num ABC A; A.one(Num); A.two(void); UpdateData(); // Button1可成功執行 } void CControl_UIDlg::OnBnClickedButton5() { ABC A; A.two(void); A.three(void); // Button5沒反應,無法執行,呼叫方式錯誤?? 補充說明(Supplement): 麻煩大家了,謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 163.25.118.211 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1449167914.A.939.html

12/04 09:50, , 1F
你檢查一下是否所有事件都註冊了,都是ON_開頭
12/04 09:50, 1F

12/04 16:04, , 2F
請問是所有額外include的物件都要註冊還是指介面上的按鈕
12/04 16:04, 2F

12/04 16:04, , 3F
等物件需註冊?
12/04 16:04, 3F

12/04 17:04, , 4F
你先加些messagebox確定OnBnClickedButton5真的有跑
12/04 17:04, 4F

12/04 19:12, , 5F
按鈕對應的事件訊息。跟同三樓言,要先確定這個事件真的
12/04 19:12, 5F

12/04 19:12, , 6F
有進func。雖然vc會自動長出事件所需的code,但有時會出
12/04 19:12, 6F

12/04 19:12, , 7F
12/04 19:12, 7F

12/04 19:22, , 8F
例如 ON_BN_CLICKED(IDC_Reset, &CItemView::OnBnClicke
12/04 19:22, 8F

12/04 19:22, , 9F
dReset)這樣的,參數都對嗎?
12/04 19:22, 9F

12/05 00:13, , 10F
MFC不是有中斷點? 善用啊
12/05 00:13, 10F

12/05 02:37, , 11F
我發現問題了...因為按鈕1有開com port的功能,但沒有關c
12/05 02:37, 11F

12/05 02:37, , 12F
om port功能,沒想到按鈕1功能執行完com port就關了,造
12/05 02:37, 12F

12/05 02:37, , 13F
成按鈕5的指令沒送出去= =
12/05 02:37, 13F
文章代碼(AID): #1MO8mgav (C_and_CPP)
文章代碼(AID): #1MO8mgav (C_and_CPP)