Re: [問題] MFC視窗傳值問題..
看板C_and_CPP (C/C++)作者don750421 (1+1≠2)時間14年前 (2012/04/05 20:40)推噓0(0推 0噓 13→)留言13則, 3人參與討論串2/3 (看更多)
我使用了推文建議的DDX方式,但是子視窗IDD_RESULT仍然無法顯示@@
但是主視窗IDD_CMAIN是有將值傳出去
我的作法是,先將子視窗IDD_RESULT與主視窗IDD_CMAIN連結
class CReSultDlg:public CDialog
{
public:
int num;
CReSultDlg(CWnd* pParent):CDialog(IDD_RESULT,pParent){}
BOOL OnInitDialog()
{
CDialog::OnInitDialog(); //呼叫CDialog::OnInitDialog()函數
return TRUE;
}
void DoDataExchange(CDataExchange *pDX)
{
DDX_Text(pDX, IDC_NUMSUM, num);
}
};
按下按鈕呼叫OnCal()
void CMainDlg::OnBnClickedBtnPlay()
{
CDialMachDlg dlg(this);
dlg.DoModal();
OnCal();//呼叫OnCal()
}
void CMainDlg::OnCal()
{
...中間算式跳過
if (sum==100)
{
CDialMachDlg dlg(this);
dlg.num=100;
}
}
我使用dlg.num這樣沒有辦法將值傳到子視窗嗎?
還是我有那裡寫錯了呢?
麻煩各位指點^^
※ 引述《don750421 (1+1≠2)》之銘言:
: 我建立了一個對話盒的專案,一開始的對話盒為IDD_CMAIN
: 而我在同個專案內建了另一個對話盒,名稱為IDD_RESULT
: 對話盒內有五個Btn(假設為IDC_BTN1~IDC_BTN5)
: 當我按下BTN時,會呼叫某一個函數假設為OnCal()
: 而我希望OnCal()運算完後的結果Show在IDD_RESULT上
: 那麼該怎麼做呢?
: BTN1~5觸發同一個函數可以使用ON_CONTROL_RANGE
: 那我要如何按這五個按鈕都能Show出 IDD_RESULT
: 但是因為代入的值不同,所以五個IDD_RESULT的結果也會不同
: 麻煩各位大大指教,謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.171.194.19
→
04/05 22:43, , 1F
04/05 22:43, 1F
→
04/05 22:45, , 2F
04/05 22:45, 2F
→
04/05 22:48, , 3F
04/05 22:48, 3F
→
04/05 22:48, , 4F
04/05 22:48, 4F
→
04/05 22:51, , 5F
04/05 22:51, 5F
→
04/05 23:00, , 6F
04/05 23:00, 6F
→
04/05 23:00, , 7F
04/05 23:00, 7F
※ 編輯: don750421 來自: 118.171.194.19 (04/05 23:02)
→
04/05 23:12, , 8F
04/05 23:12, 8F
→
04/05 23:13, , 9F
04/05 23:13, 9F
→
04/05 23:21, , 10F
04/05 23:21, 10F
→
04/05 23:22, , 11F
04/05 23:22, 11F
→
04/05 23:23, , 12F
04/05 23:23, 12F
→
04/05 23:33, , 13F
04/05 23:33, 13F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章