[問題] CView的執行問題(MFC)

看板C_and_CPP (C/C++)作者 (維)時間14年前 (2011/10/11 17:40), 編輯推噓0(0010)
留言10則, 3人參與, 最新討論串1/1
開發平台(Platform): Visual Studio 2010 額外使用到的函數庫(Library Used):OpenGL 問題(Question):在3D繪圖的地方點選一的點之後, 旁邊位於FormView的按鈕名稱會變為OK 餵入的資料(Input):no 預期的正確結果(Expected Output):點選CView畫面後,按鈕名稱變為OK 錯誤結果(Wrong Output):程式當掉 程式碼(Code):((CEdit *)GetDlgItem(pDoc->SelectID))->SetWindowTextA("OK"); 補充說明(Supplement):此行程式碼在CFormView底下OK 在CView卻過不了。 找不到錯誤 而是在程式執行後,點選繪圖區時當掉。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.71.110

10/11 23:36, , 1F
先檢查你的ID到底對不對吧... 說不定ID錯了, 根本沒東西
10/11 23:36, 1F

10/12 00:14, , 2F
確定是對的,我有替換過。
10/12 00:14, 2F

10/12 09:36, , 3F
GetDlgItem指的是取回父Wnd下的子Wnd
10/12 09:36, 3F

10/12 09:36, , 4F
看起來子Wnd是由CFormView擁有的,所以無法從CView取得
10/12 09:36, 4F

10/12 09:37, , 5F
這種程式在debug時,可以先看看GetDlgItem的傳回值
10/12 09:37, 5F

10/12 09:37, , 6F
如果是NULL的話,原因只有幾種,要不然你直接對NULL操作
10/12 09:37, 6F

10/12 09:38, , 7F
當機的話,問題會比較難猜
10/12 09:38, 7F

10/12 10:41, , 8F
如果還是不行,不知道有沒有其他寫法?
10/12 10:41, 8F

10/15 00:05, , 9F
1. 想辦法在CView取得CFormView指標,再透過CFormView操作
10/15 00:05, 9F

10/15 00:07, , 10F
2. 由CFormView來處理,中間想辦法做兩個View的訊息溝通
10/15 00:07, 10F
文章代碼(AID): #1Eb0yY4k (C_and_CPP)
文章代碼(AID): #1Eb0yY4k (C_and_CPP)