新規クラスの追加について

[戻る]
wood 2002/09/27(金) 12:50:34
OS:Win XP(SP1) 
Visual Studio 6.0(SP5)
MFC SDI 
参考にしているもの VSWAP32(シングルドキュメント 複数ビュー)

本題なのですが
最初 アプリケーションウィザードでSDI EXE プロジェクトを作成しました
その後
リソースエディタで「IDD_XXXX_FORM1,2」の
IDでフォームを2つ追加しました
その追加したフォームについての新規クラスを
「クラスウィザード」で追加しようとしたのですが
「ダイアログ ID」に「IDD_XXXX_FORM1,2」が表示されません

どうしたらよいのでしょうか

やはり nbc、opt clw 消してから
生成しなおした方がいいのでしょうか
 

dairygoods 2002/09/27(金) 14:05:25
リソースエディタでダイアログをダブルクリックすると、
「新しいクラスを作成するか?」と聞いてきませんか?

聞いてこないで、別のクラスのファイルが開く場合は、
すでにそのクラスに対応付けられてしまっているので、
そのクラスをプロジェクトから除外するか、 
// {AFX_... コメントを削除するかして、
clwをリビルドしてみてください。

wood 2002/09/27(金) 14:30:29
レスありがとうございます

>リソースエディタでダイアログをダブルクリック
こういう操作したことありませんでした
自宅に帰ったら早速やってみます
あとで結果報告します

ただし
>// {AFX_... コメントを削除するかして
該当するソースファイルは何でしょうか ???APP、???DOC

該当クラスのソースファイルは存在しないのでXXXX_FORM1.hや
XXXX_FORM1.cpp
以外ですよね

ナオーバ 2002/09/27(金) 15:55:16
clwのリビルドはclwファイルを手で削除してクラスウィザードを起動すると
ダイアログが開くのですべて追加してOKすれば出来ます。

// {AFX_... コメント削除はclwのリビルドでは必要ありません。

もしクラスが違うIDで作成されていた場合、ヘッダーファイルの
// ダイアログ データ
    //{{AFX_DATA(CKisoDataDlg)
    enum { IDD = IDD_?????? };    <---- ここを修正すればなおります

wood 2002/09/27(金) 23:55:15
[[解決]]
nbc、opt clw 消してから生成で解決しました

新規クラス作成しましたが
クラスが違うIDで作成されることはありませんでした

レス頂いた皆さん、ありがとうございました

古いスレッドには追加発言できません。