• 締切済み

サブダイアログの呼び出しについて

今、MS2017(VC++2017)を使って、親ダイアログ上のボタンを押すと子ダイアログを表示するプログラムを作っています。 しかし、その方法(ソースコード)がわかりません。誰か教えてください。

みんなの回答

  • kkkkkm
  • ベストアンサー率65% (1624/2464)
回答No.2

> DoModal]したら呼び出ししようとした瞬間にエラーが発生しました。 エラーメッセージで検索したら、なにかしらご自身の状態と合致する情報が見つからないでしょうか。

yf491224
質問者

補足

VC++2017の情報をください。

  • kkkkkm
  • ベストアンサー率65% (1624/2464)
回答No.1

MFCでしたら以下のサイトを参考にしてください。 http://typea.info/tips/wiki.cgi?page=MFC+%A5%C0%A5%A4%A5%A2%A5%ED%A5%B0%A4%CE%BA%EE%C0%AE

yf491224
質問者

お礼

回答していただいたのに、申し訳ありませんが「DoModal]したら呼び出ししようとした瞬間にエラーが発生しました。(デバッグは通りました)

yf491224
質問者

補足

すみません。VS2017のVC++2017を使っています。

関連するQ&A

  • [再掲載]子ダイアログの表示について

    今、VS2017(VC++2017)を使って、親ダイアログ上のボタンを押すと子ダイアログを表示するプログラムを作っています。 しかし、その方法(ソースコード)がわかりません。誰か教えてください。 (追記)VC++2017に限った情報をください。 (お詫び)前回、質問文で「MS2017」と表記してしまいましたが、「VS2017」の間違いでした。すみませんでした。

  • VC++でダイアログボックスを表示させるプログラム

    VC++のプログラミングで、実行できない原因が 判らないので、ヒントをいただけないでしょうか。 現在VC++の勉強中で、ダイアログボックスを 表示するプロジェクトを作成しています。 ビルドエラーは出ないのですが、実行しても 何も表示されません。 メニューを持った親ウインドウを表示し、 メニューから「加算」を選択すると 計算用のダイアログボックスが表示されるプログラムです。 ダイアログボックスは三個のテキストボックスと 二個のボタンがあり、数字を二箇所入れ ボタンを押すと計算結果を表示します。 長くなる為ソースは書けないのですが、 こういう場合まず何からチェックすればいいでしょうか? 初心者なのでちょっとしたことで間違えているかも しれません。どなたかアドバイス下さい。

  • CDHtmlDialog で子ダイアログがアクティブになりません

    現在CDHtmlDialogクラスを使って、ダイアログベースのプログラム開発を試みています。開発環境はVisualStudio2008です。 親ダイアログにあるボタンをクリックすると、子ダイアログが親ダイアログに重なる位置に表示され、子ダイアログにあるHTML コントロールのイベント処理等ができるようにしたいのですが、うまくいかず困っています。 子ダイアログの表示まではできたのですが、アクティブになっていないようです。ただ画面に表示されているだけといいますか・・・ 子ダイアログに配置したボタンはクリックできず(カーソルが変わりません)、親ダイアログに配置したボタンはクリックできる、というような状態です。 また、ダイアログの一部が画面外になるように動かしてから元の位置に戻すと、子ダイアログの再描画がされず、その下に隠されていた親ダイアログが出てきてしまいます。 子ダイアログのプロパティは Style:子、Border:なし にしています。 手順は、 1.親ダイアログのOnInitDialogで子ダイアログをCreate。MoveWindowで位置調整。子ダイアログはShowWindowで非表示にする。 2.親ダイアログのボタンをクリックすると、子ダイアログをShowWindowで表示させる。 としています。 CDialogで同じ方法でやっていたときは何も問題なかったのですが・・・ CDHtmlDialogに関する情報はあまり出回っていないようで、こちらに質問させていただきました。 説明が分かり難い点もあるかと思いますが、ご教示よろしくお願いいたします。

  • モードレスダイアログのキー入力について

    VC++6.0で親ダイアログで作成した子ダイアログをモードレスで表示しています。(ShowWindowで表示した後、子ダイアログが終了するまでループ) 両方のダイアログに、OKボタンとキャンセルボタンしかない時には、リターンキー・ESCキーを押せば子ダイアログが終了していました。(親ダイアログにフォーカスがあるときには親ダイアログが終了) ところが、子ダイアログが表示されている間、親ダイアログ上でプログレスバーを表示・更新ようにしたら、とたんにリターンキー・ESCキーが効かなくなり、マウスのクリックでしか終了することができなくなりました。 WEBで調べてPreTranslateMessageを追加して、この関数にブレイクポイントを設定しましたが、呼ばれている様子がありません。 子ダイアログをマウスのボタンクリックで終了させた後は、親ダイアログのPreTranslateMessageでイベントが取得できます。 何をどうしたらリターンキー・ESCキーのイベントが取得できるようになるのでしょうか?

  • モードレスダイアログについて

    いつもお世話になっています。 WIN98 VC++6.0 MFC モードレスダイアログにおいて、 子ダイアログが表示されていても親ダイアログの操作が出来ますが、親ダイアログを子ダイアログの前に持ってくるにはどうすれば良いのでしょうか?

  • 子ダイアログのコントロールにフォーカス(VC++2005)

    お世話になります。 Visual Studio 2005でVC++の開発をしております。 ダイアログを2つ用意して、一つはstyleを「ポップアップ」に、 もう一つは「子」にしてます。 親ダイアログ内にタブをセットし、その上に子を乗せる処理を行っていて 親のダイアログのボタンイベントから子のダイアログのコントロールにフォーカスを 当てたいのですが、どのようにしたらよろしいのでしょうか? 親ダイアログ内では、 (子ダイアログ).Create(子ダイアログクラス, this); で生成して MoveWindowやShowWindowで位置・表示の設定を行っています。 親から子ダイアログ内のコントロールの入力チェックを行おうと思い、 未入力判定まではできたのですが どうしてもSetFocus()でフォーカスが当たりません。 どなたかご教授していただけますでしょうか?

  • 【VC++2005(CLR)】ダイアログ呼び出し元ダイアログを手前に表示させたい

    VC++初心者です。 現在、VC++ express edition、CLRプロジェクトでコーディングしております。 いろいろな方の力を借りて、モードレスでダイアログ(子ダイアログ)を 呼び出しだすことができました。ありがとうございました。 しかしながら、常にその子ダイアログが呼び出し元ダイアログ(親ダイアログ)の手前に 表示されてしまいます。 各ダイアログがクリックされるたびに、クリックされたダイアログが手前に表示する ようにできませんでしょうか。 よろしくお願いします。

  • VC++のダイアログボックスに絵を描くには?

    VC++初心者なんですが、画像処理関係のプログラムをVC++で作っています。で、子ウィンドウに表示されている画像のRGBそれぞれのヒストグラムをダイアログボックスに表示したいのですが、ダイアログボックスに絵(グラフ)を描く方法がわかりません。どういう手順でやればいいですか?エディットボックスにGDIとかで絵を描くことは可能なんですか?またはピクチャーボックスですか?

  • MFC、ダイアログベースでのモードレス作成

    現在、MFCで検索プログラムを作成しています。 始めはDoModalで作成していたのですが、ダイアログを閉じずに、ダイアログを複数並べて見たいという意見が出た為、モードレスで作成し直そうとしたところ、ダイアログが現れてくれません。 インターネットで見つけたソースを試してみたのですが、上手くいきません。 どなたか教えて頂けますか? =ダイアログに移るボタンコードに= CDlg1 dlg; dlg.Create(IDD_DIALOG1, this); dlg.ShowWindow(SW_SHOW); (dlg.DestroyWindow();は他に記述) 1. 上記では、ShowWindowに0が返ってしまい、一瞬ダイアログが映って 消えてしまいます。Createは1が返ってるのでいいかと思いますが…。 2. あと、違うソースで試したところ、ダイアログは表示できるものの、 一回消してしまうと、もう一度ボタンを押しても再度は表示されません。 しかも、Destroy()を設定したOKボタンでは強制終了となってしまいます。 モードレスで作成すると、一回そのダイアログを消してしまうと再度表示ができないのでしょうか? モードレスってただ他の処理ができるというだけで、そのダイアログを何枚も表示させておくことはできないのでしょうか? 3. このダイアログにjpegファイルを表示させているのですが、ダイアログベース・htmlView以外で表示させれる方法がありましたら教えて下さい。 よろしくお願いします。

  • 子プロセス(EXEファイル)が要求する文字列(パスワードなど)へ代入する方法

    VC++にて、親プロセスから子プロセス(EXEファイル)をCreateProcessで起動し、 子プロセスが要求するダイアログ(文字とOKボタンのクリック)への入力を親プロ セスから制御する方法を教えてください。