はじめまして。大空 翼と申します。
Visual Studio 2005を使用しまだ1か月経たない初心者です。
パソコンに関してもあまり知識がないので言っていることがわからないことがあるとは思いますがよろしくお願いします。
使用している環境は、Windows XP SP2
Visual Studio 2005 Professional Editionです。
プロジェクトの種類はMFCアプリケーションでダイアログベースで作っております。
立ち上がった画面にボタンを設置し、それが押されたら他のダイアログにデータグリッドビューを使って表示させたいのですがダイアログではデータグリッドビューを使用できないと思います。
そこで質問なのですが、ダイアログベースでデータグリッドビューを表示させるにはどのようにしたらよろしいでしょうか?
私が試したものとしては新しい項目の追加でWindowsフォームを追加したのですが
コンパイルでエラーになってしまい下記でエラーにならないようにはなりました。
http://msdn2.microsoft.com/ja-jp/library/ms235211.aspx
しかしそのあとフォームを呼ぶ方法がわからないため実行できず今止まっております。
Windowsフォームを使用する方法、またはダイアログでデータグリッドビューを表示する方法がありましたら教えてください。
よろしくお願いいたします。
MFC(ネイティブ)とWindowsフォーム(マネージ)を混在させたいと言う事でしょうか?
WindowsフォームではDataGridが標準で使えますが、MFCを使わないといけない理由でもありますか?
最初からWindowsフォームで作成した方が簡単だと思いますが。
YMT様
ご返信ありがとうございます。
MFC(ネイティブ)とWindowsフォーム(マネージ)を混らせたいということで正しいです。
わかりづらい説明で申し訳ありません。
MFCを使う理由といたしまして初めにアプリを作るにあたってエディットボックスとIPアドレスコントロールを使用したかったのですがWindowsフォームで作成しようとするとツールボックル欄にIPアドレスコントロールやエディットボックスがありませんで使用できないと思いましてMFC/ダイアログベースで作成いたしました。
そしてある程度作り終わったのですが他の機能を追加しようと思った時にDataGridのような表を出さなくてはいけなくなってしまったため使用しようと思いこのような質問をさせていただきました。
実際DataGridViewにこだわりはなく、DataGridViewと同じようなものがダイアログ上に表示でき、またエディットもできればいいかなと思っておりましたがWindowsフォームが使用できれば実現するには一番早いかなと思っておりました。
現状としてはこのような感じです。
よろしくお願いいたします。
↑訂正です。エディットボックスではなくてエディットコントロールでした(汗)
大変申し訳ございません。
自分の認識ではMFCとWindowsフォームは別物と思っています(MFCはWindowsAPI、Windowsフォームは.NET Frameworkの機能を利用するようにコード記述します。←間違っている場合は補足願います)
混在はできないと思うので、MFCならばデータグリッドのようなものを、Windowsフォームなら、IPアドレスコントロールのようなものをどうするかを考える事になると思います(手法は色々あるので、明言しません)
ちなみにMFCのエディットコントロール(Edit Control)は、Windowsフォームではテキストボックス(TextBox)になります。
YMT様
遅くなってしまい申し訳ございません。
ご返信いただいた内容で納得いたしました。
いろいろな策を練ってMFCでデータグリッドのようなものを作成するように頑張ってみたいと思います。
相談にのっていただきありがとうございました!
また何かあったらよろしくお願いします。
ツイート | ![]() |