- 締切済み
VC++ 6.0 でのCMainFrameクラスの作り方を教えてくださ
VC++ 6.0 でのCMainFrameクラスの作り方を教えてください OSはWindows XPです。 MainFrame.cpp MainFraem.h ファイルはどちらもない状態です。 新規作成方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- magicalpass
- ベストアンサー率58% (378/648)
既存のダイアログベースのアプリにMainFrameを追加して、メニューバー等を追加したいということですか?(オープニングというのはよくわかりませんが) MainFrameというのはMDIアプリやSDIアプリでの一番メインになるウインドウであり、ダイアログベースのアプリではそのダイアログ自身がメインのウインドウなので、そのままダイアログベースのアプリとMainFrameを共存させることはできません。 そういう無理をせずに実現しようとすると、次の2つの方法ぐらいしか思い付きません。 (1)既存のダイアログベースのアプリにメニューバーを追加する MainFrameのメニューの実体はメニューコントロールが張り付けられたウインドウ以外の何ものでもないので、同様の機能を持つメニューバーを自作してダイアログに配置すれば良いはずです。 (2)SDIアプリとして作り直し、ダイアログ部分は子ウインドウとしてView上のクライアント領域に貼り付ける こちらはMainFrameをそのまま使えますが、既存部分のソフトを大きく作り直す必要があります。
- magicalpass
- ベストアンサー率58% (378/648)
プロジェクトの新規作成時にMFCアプリケーションでMDIやSDIを指定したら自動的に作成されるはずだと思いますが…… ダイアログベースのアプリの場合は不要なので作成されません。
お礼
ありがとうございます。 ダイアログベースのアプリの場合は不要と言うことは、分かりました。 質問の仕方が間違っていました。 Ahaと言うフォルダ内に Aha.cpp Aha.h AhaDlg.cpp AhaDlg.h Aha.asp Aha.clw Aha.dsp Aha.dsw Aha.rc 等は作成されていて、実行してオープニングやメニューバーの ファイルを作成させる為の MainFrm.cpp MainFrm.h を作成して見たいと思っております。 プロジェクト(P) -> プロジェクト追加(A) - 新規作成(N)で ファイルの所は、C/C++ ヘッダーファイル , C++ソースファイル 等どれを選択? プロジェクトの所は、MFC AppWizard(exe)を選択? プロジェクト名(N) MainFrm.cpp でいいのでしょうか? 位置(C) は C:\AAA\Aha\ 現在のワークスペースに追加にチェック有り プラットフォームは Win32にチェックが有ります。 この手順であっているでしょうか? ご指導の程、よろしくお願いいたします。
お礼
ありがとうございました m_ _m CMainFrameのクラスも MainFrame.cpp MainFrame.h も出来ることが出来ました。 今回の主旨は、メインフレームを作成し、 実行時のオープニング画面(**View.cpp)のファイルを利用し、 メニューバーのファイルにして、色々なDialog画面を選択出来て、 表示するオブジェクトを作るのが目的です。 成功方法は、 ClassView Ahaクラス |- クラス新規作成(N) クラスの種類(T) MFC クラス クラス名 CMainFrame 基本クラス CFrameWhd ダイアログID(D) なし を選択し、OK で CMainFrameクラス MainFrame.cpp MainFrame.h の基本が出来ました。 ダイアログべースではなく、今回のシステムの オープニング画面表示等のメインフレームに しようと思いました。 SDI,MDIの意味も少し、分かりました。 ありがとうございました。 又、アドバイスよろしくお願い致します。