[問題] ADialog按鈕觸發BDialog功能

看板C_and_CPP (C/C++)作者 (JIM)時間10年前 (2015/07/08 15:46), 10年前編輯推噓2(202)
留言4則, 1人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) VC10、MFC 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) Opencv(cvvimage) 問題(Question): 我想要從A dialog的按鈕按一下 就會把值傳過去B dialog並顯示 目前試過兩種方法 一、直接摳B的picture control ID 二、下面說明 結果都是一樣的錯誤,可以讀到ID,但是沒辦法對ID做事 "...winocc.cpp line 92"!在 GetDlgItem(nID)這行 程式碼(Code):(請善用置底文網頁, 記得排版) A.cpp void member::OnBnClickedButton7() { foods=1; sub1(); } B.h #ifndef SUB_H #define SUB_H #include <stdio.h> extern int foods; void sub1(); #endif B.cpp char label2[30]; IplImage *image2=NULL; int foods; digital_signage m_ds; void sub1(){ sprintf(label2,"main/%d.jpg",foods); image2 = cvLoadImage(label2,1); m_ds.DrawPicToHDC(image2,IDC_FOOD); } 補充說明(Supplement): DrawPicToHDC這個用到Opencv讓image2顯示在picture conctrl 函式、傳值都分別測試過了沒有問題。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.123.112.60 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1436341599.A.1CB.html ※ 編輯: jiqian (140.123.112.60), 07/08/2015 15:46:53

07/08 19:14, , 1F
GetDlgItem()應該是拿到CWnd* 直接在A裡面多個B的變數
07/08 19:14, 1F

07/08 19:14, , 2F
直接用b->func or b->param 傳值就可
07/08 19:14, 2F
感覺超合理了啊!!! 為什麼還是不能!!! 麻煩你了~~ MainDlg.cpp void MainDlg::OnBnClickedButton3() { d_s *ds = new d_s; ds->Showing(); } --------------------------------------------------- ds.cpp void d_s::Showing(){ sprintf(label2,"main/%d.jpg",foods); image2 = cvLoadImage(label2,1); DrawPicToHDC(image2,IDC_FOOD); } ※ 編輯: jiqian (140.123.112.60), 07/08/2015 23:22:39

07/09 00:27, , 3F
你的Showing要帶參數啊....
07/09 00:27, 3F

07/09 00:29, , 4F
另外一提 將參數傳進去之後才做d_s的OnInitDialog
07/09 00:29, 4F
文章代碼(AID): #1LdDLV7B (C_and_CPP)
文章代碼(AID): #1LdDLV7B (C_and_CPP)