掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
共通画面の遷移元を認識するには? (ID:67375)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> ダイアログZのクラスはダイアログAのクラスを継承。 は不用。(継承->参照の間違い?) 例: class CDialogZ : public CDialog { public: CDialogZ(CWnd* pParent = NULL); // 標準コンストラクタ enum { IDD = IDD_DIALOG_Z }; virtual BOOL OnInitDialog(); }; class CDialogA : public CDialog { public: CDialogA(CWnd* pParent = NULL); // 標準コンストラクタ enum { IDD = IDD_DIALOG_A }; afx_msg void OnBnClickedButtonA(); afx_msg void OnBnClickedButtonB(); bool isButtonA(void) {return m_bButtonA;} private: bool m_bButtonA; }; CDialogA::CDialogA(CWnd* pParent /*=NULL*/) : CDialog(CDlgCallDlg::IDD, pParent) {} void CDialogA::OnBnClickedButtonA() { m_bButtonA = true; CDialogZ dlg(this); dlg.DoModal(); } void CDialogA::OnBnClickedButtonB() { m_bButtonA = false; CDialogZ dlg(this); dlg.DoModal(); } CDialogZ::CDialogZ(CWnd* pParent /*=NULL*/) : CDialog(CDlgCallDlg::IDD, pParent) {} BOOL CDialogZ::OnInitDialog() { CDialog::OnInitDialog(); CDialogA* pParent = (CDialogA*)GetParent(); if (pParent->isButtonA()) { // ボタンAから呼び出された } else { // ボタンBから呼び出された } return TRUE; } 別の方法: bool m_bButtonA; をCDialogZに持っていき、CDailogAから操作する。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.