掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
カラーダイアログのZ順を変更するには? (ID:70380)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
みい様 CColorDialogの第3引数には,thisが指定してありました.また,ほかのコモンダイアログで試しても同じ結果でした. 少し長いですが,大まかに必要な部分の実装手順を説明させてください. 1.MFC CFormViewベースでプロジェクト作成 - CPropertyViewとします. 2. 各種クラスの作成 ・CRootPropertySheet - CPropertyViewから呼ばれる親となるプロパティシート ・CRootPropertyPage - CRootPropertySheet内に生成されるプロパティページ ・CSubPropertySheet - CRootPropertyPage内に生成されるプロパティシートの土台 ・CSubPropertyPage - CSubPropertySheet内に生成されるプロパティページ 3. 各クラスの編集 ・CPropertyView - リソースのMenuにON_COMMANDハンドラを追加.ここでは,OnMenu()が呼び出されることにします. - CRootPropertySheetのメンバ変数:m_rootPropSheetを登録 - OnMenu()実装 m_rootPropSheet.CreateRootPropertySheet(); m_rootPropSheet.DoModal(); ・CRootPropertySheet - CRootPropertyPageのメンバ変数:m_rootPropPageを登録 - CreateRootPropertySheet()実装 Construct("Root Property Sheet",this); rootPropPage.Construct(IDD_****,0); AddPage(&rootPropPage); ・CRootPropertyPage - CSubPropertySheetのメンバ変数:m_subPropSheetを登録 - CSubPropertyPageのメンバ変数:m_subPropPageを登録 - CRootPropertyPage::OnInitDialogを編集 CRect rect; m_subPropSheet.AddPage(&m_subPropPage); m_subPropSheet.Create(this, WS_CHILD | WS_VISIBLE, NULL); m_subPropSheet.GetClientRect(&rect); m_subPropSheet.SetWindowPos(&wndTop, 0, 0, rect.right - rect.left, rect.bottom - rect.top, SWP_SHOWWINDOW); 以上の流れになります.細かいエラー処理などは省いています.このアプリの動作は, 1.CPropertyViewのウィンドウが開く 2.CPropertyViewのウィンドウのメインメニューをクリック 3.CRootProperySheet - CRootPropertyPage - CSubPropertySheet - CSubPropertyPage のようにプロパティシートの中に入れ子になったプロパティシートが開かれる. となります.これらの流れから何か分かる事はありますでしょうか? 以上,よろしくお願いいたします.
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.