• 締切済み

MFCを起動する時、初期化方法が知りたい

今作ったMFCプログラムは、デバッグしたら、UI(user interface)ダイアログで初期化ボタンをクリックして、初期化を行います。 初期化コントロール通知ハンドラ コードは初期化ボタン中で追加します。 今の目標は、デバッグしたら、初期化が始まります(初期化ボタンをクリックしません) それを実現する方法は教えてもらえませんか? ありがとうございました。

みんなの回答

  • zwi
  • ベストアンサー率56% (730/1282)
回答No.2

さっぱり意味がわかりませんが、OnInitDialogやコンストラクタで初期化してはダメなのですか?

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

「デバッグしたら、初期化が始まります(初期化ボタンをクリックしません)」の部分, 日本語の意味が分かりません. 「デバッグしない」ときには, 初期化しなくていいの?

関連するQ&A

  • ダイアログの上のテキストボックスの、初期値を設定する方法が分かりません・・・・

    VSC++2005です、 ダイアログの上のテキストボックスの初期値を設定する 方法が分かりません、 ダイアログが表示されたとき、 ダイアログに貼り付けてあるテキストボックスの初期値を 入力しておきたいのですが、うまくゆきません 下のようにしました、 ボタンをクリックして、ダイアログを表示させ ダイアログ上の エディットコントロールに、値を表示させるつもりですが、 void CXXXView::OnBnClickedButton2() { // TODO: ここにコントロール通知ハンドラ コードを追加します。 Cfailsettei cf;  //ダイアログのクラスのインスタンス作成 cf.edit1.SetWindowTextA("yyy");   cf.edit2.SetWindowTextA("xxx"); //edit1、edit2は、エディットコントロールです cf.DoModal(); } エラーが起こってしまいます、 何故でしょうか? よろしくお願いします。

  • 起動時に何のダイアログも表示されない

    こんにちは。 大変恐縮ですがこちらで質問させてください。 開発環境はVC2005のMFCです。 質問内容は題名の通りなのですが、デバッグを実行しても何のダイアログが表示されない という状態になってしまいました。 すぐにデバッグが終了してしまいます。(「デバッグなしで開始」でも同様です。) プロジェクトはダイアログベース、スタティックライブラリ、ソケットを使える設定で 作成しました。 プロジェクトを作成してから他ダイアログを作り全てのダイアログに新しくボタンを配置したのと、初期配置のOK,キャンセルボタンを削除した以外は、コード上に手を加えるなどはしていません。 また、以下のようなエラーコードが出力されました。 Dumping objects -> f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\occmgr.cpp(195) : {75} normal block at 0x003496B8, 488 bytes long. Data: < > E8 03 00 00 00 00 00 00 E9 03 00 00 00 00 00 00 {74} normal block at 0x00349580, 248 bytes long. Data: < > FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 Object dump complete. プログラム '[1528] test.exe: ネイティブ' はコード 0 (0x0) で終了しました。 何か原因と対策等がわかりましたら回答をいただければと思います。 よろしくお願いします。

  • MFC ダイアログ上のID取得について

    VC++6.0 MFC ダイアログベースで開発しています。 リソースエディタで配置したダイアログ上にある全てのコントロール(ボタン、テキスト等)IDを取得する方法はありませんか? よろしくお願いします。

  • MFCに関する質問です。

    みなさん、はじめまして! VC2008でMFCアプリケーションプログラミングを始めて習うものですが、最初にソリューションファイルを作って何も書かない場合でビルドして、デバッグすると白いページが出てきますが、 OpenCVで画像処理の二値化のプログラムを書いて実行したら、ビルドしてエラーは発生しませんが、デバッグしてみると、「OLEの初期化に失敗しました。OLEのライブラリのバージョンが正しいことを確認してください」とのメッセージが出てきて、OKボタンを押すと、何も処理してくれません。 ネット上でいろいろ調べましたが、まだ解決できていません。 MFCについて、まだぜんぜんわからないので、上記のことをどう対処したらいいのかをご指導いただきたいです。 どうぞよろしくお願いします。

  • .NETでのイベントハンドラを自由に操作したい

    .NETでコントロールのイベントハンドラを 自由に取得・設定したいのですが そのようなことはできないのでしょうか? 例えばフォーム上に通常のボタンを貼り付けたのちに 自作のボタンをソースコード内で作成し、通常のボタンにセットされているイベントハンドラを自作ボタンのイベントハンドラに追加する、というようなことが したいのですが。。。 どういうふうにやっても、 「イベント 'System.Windows.Forms.Control.Click' は += または -= の左側にのみ表示されます。」 で、できません。 何か分かる方いらっしゃいましたらお願いいたします。

  • MFCでのパイププログラム

    VC6のMFCダイアログベースでパイププログラムを作っています。 パイプをConnectNamedPipe()して待ち受けるまで出来たのですが、 待ち受けると同時にボタンクリック等のメッセージもハンドルしたいのですが、これって可能でしょうか?

  • ループ計算の停止方法(visual C++)

    VISUAL C++ .NET 2003で下記の内容のMFCアプリケーション (ダイアログベース)を作成したいと思っています。 ・開始ボタンを押してダイアログ(小窓)を開く (大規模な繰返し計算開始) ・ダイアログに計算経過を表示する ・ダイアログにある中止ボタンを押すと 計算が中止される ここで,開始ボタンのイベントハンドラに forループを記述することになると思うのですが, 中止ボタンが押されたかどうか監視する 方法が分かりません。よろしくお願いします。

  • MFC - ボタンの処理について

    現在MFCを用いてWebカメラからのキャプチャを行うソフトを作成しています。 環境はVisual Studio 2005です。 ソフトウェアはダイアログ形式で、”Capture"と"停止"のボタン、そして1つPictureControlを配置し、"Capture"ボタンが押されたらWebカメラからの映像をPictureControlに表示し、"停止"ボタンが押されたらキャプチャを終了するというものです。 少し長くなってしまうのですがよろしくお願いします。 開発当初、ダイアログクラスのメンバ変数にbool型の Cap_Flag を追加し、コンストラクタにより初期値を false に設定するようプログラムを組みました。 そして "Capture"ボタンが押され、そのイベントハンドラが呼び出された時に、 Cap_Flag を true に設定しキャプチャを行う関数を実行するようにしました。 キャプチャを行う関数の中では、 Cap_Flag をチェックし true に設定されている間キャプチャを行うよう while( Cap_Flag == true ) としてキャプチャを行います。 その後 "停止"ボタン が押されれば、そのボタンに対するイベントハンドラ内で Cap_Flag に false を設定し、キャプチャを終了しようと考えました。 この設計では確かに "Capture"ボタンが押されればキャプチャが行われ、PictureControlに映像が表示されるのですが、これらのキャプチャ処理は "Capture"ボタン のイベントハンドラ内で実行しているため、キャプチャを行っている間、つまり while( Cap_Flag == true ) となっている間は永遠に実行状態になっているため "Capture"ボタン が押されっぱなしの状態になり、"停止"ボタンを押すことが出来なくなってしまいます。また無理に "停止"ボタン を押そうとすると固まってしまうため、うまく"Capture"と"停止"を行うことが出来ない状況です。 改善策として、オリジナルのメッセージを作成しメッセージマップでそのオリジナルの命令に対してキャプチャを行う関数が呼び出されるよう設定しました。よって、 "Capture"ボタンが押されたときに呼び出されるイベントハンドラ内で Cap_Flag を true に設定し、オリジナルのメッセージを送信して、そのメッセージに対応するキャプチャを行う関数を呼び出すようプログラムを組みなおしました。 このように組みなおした理由は、"Capture"ボタンが押されたときに呼び出されるイベントハンドラ内の処理は、Cap_Flag を true に設定することと、オリジナルのメッセージを送信することのみで、イベントハンドラ内ではキャプチャを行う関数は実行されず、 実際に "Capture"ボタン が押されたとしても、押された状態ではなくすぐに基の状態(表示)にもどるだろうと考えたためです。 ですが、このように変更しても "Capture"ボタンのイベントハンドラ内でキャプチャ処理を行っていることと同様に "Capture"ボタンが押されっぱなしの状態になり、"停止"ボタンを押すことが出来ません。 どのようにプログラムを組めば、実際にキャプチャを行っている間でも、"Capture"ボタンが押された状態にならず "停止"ボタン を押すことができるようになるでしょうか? 参考になるアドバイス、またはウェブページをご紹介いただけれたらと思います。 よろしくお願い致します。

  • MFCのリストボックスについて

    MFCをVC6.0で作成しています。現在、ダイアログボックスを作成しているのですが、ダイアログボックスの中のリストボックスについて、教えてください。 void CFileReadeDlg::GetIndex() { UpdateData(TRUE); m_nCount = m_xcList.GetCurSel(); if(m_nCount==LB_ERR) { AfxMessageBox("選択してください"); } } の関数で、リストボックス内に存在するカーソルの位置を割り出したいのですが、 この関数は、 void CFileReadeDlg::OnSelchangeDatatable() { // TODO: この位置にコントロール通知ハンドラ用のコードを追加してください GetIndex(); } のようにリストボックスの中のセルを変更した際に稼動する関数内で呼び出しています。 ですが、実際、このm_nCountには、0しか入りません。 これは、単にOnSelchangeDatatable()の関数を何処かの関数内にも呼び出していないからでしょうか。 そもそも、呼び出す必要はないかと思っていたのですが。 又、VCのヘルプに『単一選択リスト ボックスで、現在選択されている項目があれば、その項目の 0 から始まるインデックスを取得します』 とありましたが、0から始まるインデックスとは、どういうことを意味しているのでしょうか。 よろしくお願いします。

  • VisualStudio MFC変数が追加できない

    MFCでダイアログベースのアプリ作成しています。 以前使っていたプロジェクトに変更を加えるため、 ダイアログにコントロールを追加しました。 そのコントロールに対してメンバ変数を追加しようとしたところ、 「変数の追加」ボタンが使用不可となっており、変数の追加が行えません。 また、クラスビューが表示されなくなったようで、こちらからも追加ができません。 2008を使っています。 解決方法をご教示願います。