看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: Win10, Linux, ...) Win10 編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出) VS2017 問題(Question): 各位好 我在一個view中放了button與picture control 透過點擊按鈕可顯示bitmap圖片 程式碼如下圖 https://imgur.com/a/JWW2W 現在我要透過Dialog的按鈕讓同個view顯示圖片 試過在雙擊按鈕自動產生的BN_CLICKE事件中加入程式 但有錯誤訊息 https://imgur.com/a/NUin1 也試過對按鈕加入event handler 我在class list選該view 在function中試著跳出一個messagebox 不過卻沒反應 https://imgur.com/a/mlTFM (也試過把顯示圖片程式碼放上去 也沒反應) 是不是少了什麼步驟? 請各位前輩指導 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 202.39.226.12 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1519352685.A.69F.html
suwako: 控件ID要換掉 不能用IDC_STATIC 02/23 13:36
原來要換ID, 不過改了之後還是一樣的情況, view的button沒問題, Dialog依舊無法, 或者需要宣告什麼嗎?
suwako: 你現在是寫成怎樣? 02/23 14:41
我把picture control的ID改成IDC_PICTURE來使用
suwako: 那你說的Dialog是怎麼寫?我看不到你的code,我不知道你是 02/23 15:10
suwako: 怎樣的問題阿 02/23 15:10
我在dialog button的code與第一張圖片相同(顯示bitmap的程式碼)
suwako: 你還是把code貼出來吧,我沒有水晶球 02/23 15:47
CODE: void CDialogTEST1::OnBnClickedButton2() { CBitmap bitmap; bitmap.LoadBitmap(IDB_BITMAP1); CStatic *p = (CStatic *)GetDlgItem(IDC_PICTURE); p->ModifyStyle(0xf, SS_BITMAP | SS_CENTERIMAGE); p->SetBitmap(bitmap); } ※ 編輯: OPliao (202.39.226.12), 02/23/2018 15:50:38
suwako: 會不會是你event連結有問題? 02/23 17:17
F04E: 你是要讓view顯示圖片?如果是的話,GetDlgItem取到的指標是 02/26 17:40
F04E: dialog上的control,而不是view上的 02/26 17:41
F04E: 應該要把dialog的爸爸(或媽媽)設成view並在view上加一個 02/26 17:44
F04E: 秀圖函數,然後在dialog的bn_click event裡透過爸爸(或媽媽 02/26 17:46
F04E: )的pointer呼叫秀圖函數,以上。 02/26 17:47