0


一部のファイルのプレビューを表示するコントロールを MFC で作成する必要があります。これらのファイルは 3D モデルであるため、OpenGL を使用して描画し、ユーザーが操作 (パン、ズームなど) できるようにする必要があります。

ファイルシステムでナビゲーションを再度行うのは時間の無駄であり、結果が確実に同じではないため、 CFileDialog クラスを拡張したいと思います。
子ダイアログを追加して CFileDialog リソースを変更することができました:

SetTemplate( 0, MAKEINTRESOURCE( IDD_MYPREVIEWDLG ) )

右側にプレビューを表示したいのですが、子は下部に追加されます。

それは可能ですか?

4

1 に答える 1

4

MSDNから(強調鉱山):

新しいコントロール用のスペースを確保するために、システムは既定のダイアログ ボックスをカスタム ダイアログ ボックスの幅と高さだけ拡張します。既定では、カスタム ダイアログ ボックスのすべてのコントロールは、既定のダイアログ ボックスのコントロールの下に配置されます。ただし、このデフォルトの配置をオーバーライドできますカスタム ダイアログ ボックス テンプレートに静的テキスト コントロールを含め、コントロール識別子の値 stc32 を割り当てます。(この値は、Dlgs.h ヘッダー ファイルで定義されます。) この場合、システムは、新しいコントロールを配置する場所を決定するための参照点としてコントロールを使用します。stc32 コントロールの上および左にあるすべての新しいコントロールは、既定のダイアログ ボックスのコントロールの上および左に同じ量だけ配置されます。stc32 コントロールの下および右にある新しいコントロールは、デフォルト コントロールの下および右に配置されます。一般に、新しい各コントロールは、stc32 コントロールに対する位置と同じように、デフォルト コントロールに対する相対位置になるように配置されます。これらの新しいコントロール用のスペースを確保するために、システムは必要に応じて既定のダイアログ ボックスの左、右、下、および上にスペースを追加します。

于 2014-04-29T07:46:35.357 に答える