2012-04-04 11 views
1

"グラフィックスリソース"を使用してダイアログを作成したくないです!私がこれまで持って何CDialogウィンドウをプログラムで作成する方法

:あなたは、リソースエディタでダイアログテンプレートを作成し、CDialogコンストラクタにそれを提供する必要が

CDialog *dlgWin = new CDialog(); 
dlgWin->Create("hello"); // <-- but this Errors: "Debug Assertion failed!" 

THX

+4

ダイアログリソースを使用したくない場合は、CDialogを使用している点はありません。 CWndから独自のクラスを派生させ、空のウィンドウだけでなく、RunModalLoop()メソッドを呼び出してダイアログにすることもできます。 –

答えて

2

ここにはdocumentationがあります。また、動的にダイアログを動的に作成する方法についても説明していますが、それほど些細なことではありません。私はMFCを使用しないことをお勧めします。

MSDNのドキュメントは、通常かなりよく書かれています。

+0

MFCでない場合はGUIに何をお勧めしますか? ...私は、ボタンとタブ、編集ボックス、文字列、プロットが必要です... – jdl

+0

私は.NETと一緒に行くだろう。 Qtは考慮すべき別の(移植可能な)オプションです。多分、もっと研究してみてください。 – littleadv

+2

* "私はMFCを使用することをお勧めします。" *なぜですか?あなたはそれが古いと聞いたので?私はどこか聞いたことがありますが、MSDNのドキュメントは通常、かなり書かれています。 –

1

すべてのダイアログボックスに1つの空のダイアログテンプレートを使用し、独自のGUIレイアウトライブラリを使用してMFCウィジェットのサイズを生成および管理します。多くの追加作業が必要で問題を提起するだけでなく、機能も必要とするため、本当に実行したいのかどうかはわかりません。

Qt oder GTKを使用することは方法かもしれませんが、私はそれらを好きではありません。

関連する問題