• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VS2008でEDIT今トーロールがつくれない)

VS2008でEditコントロールが作成できない問題の解決策

このQ&Aのポイント
  • VS2008でスケルトンを作成し、Editコントロールを実装したいができない問題について
  • WM_CREATEをWndProcに作成し、CreateWindowを記述することでEditコントロールを作成するが、機能しない
  • 解決策を教えてください

質問者が選んだベストアンサー

  • ベストアンサー
  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.2

>MessageBoxをつけたところ、WM_CREATEが何度も呼び出されています。 この時点でおかしいような気もしますが…。 どこかでCreateWindow()を何度もコールしていたりしませんか? 作成したソリューション名がedit…なんてことはないですよね? # 大文字変換される…かなぁ……。 ちなみに、こちらでやったのは… Win32アプリケーションを選択、特にオプションは変更せずにウィザードは[OK]ボタンで閉じます。 スケルトンが作成されるのでID_EDITを適当にdefine。(とりあえず100で) WndProc()にWM_CREATEを掲示されたもので貼り付け。 # static HWND hwndEdit;も追加。 だけです。 # その上で"edit"を"Edit"に修正…です。 # WindowsXPSP3/VC2008EE。

eznetwork
質問者

お礼

お恥ずかしい >作成したソリューション名がedit…なんてことはないですよね? ソリューション名がeditでした。 その部分は何も考えていませんでした。 穴があったら入りたいです。 解決しました。

その他の回答 (1)

  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.1

>3 実行するとEditコントロールの中にEditコントロールができて、Editコントロールとしては機能しません。 この状態にはなりませんでしたので…現象が違うかも知れませんが… # VC2008EEで確認。 SDIのクライアント上にEditコントロールに似たウィンドウが表示されました。 >hwndEdit = CreateWindow(TEXT("edit"),L"abcdefghijkl", TEXT("edit")をTEXT("Edit")に変えたらどうですか? または、WC_EDITに。(ComCtrl.hが必要)

eznetwork
質問者

お礼

回答ありがとうございます。 両方、試してみましたが残念ながら、だめでした。 また、CreateWindowExを使用しても、だめでした。 症状は□の中に□ができて、その中にも□がという具合です。 MessageBoxをつけたところ、WM_CREATEが何度も呼び出されています。 CreateWindowのEDITをBUTTONに変えたところ、ボタンはできました。 環境は、VC2008のProfessionalEditionです。 ちなみにウイザードがつくったスケルトンではなく、書籍に載っているスケルトンを入力すれば成功します。 書籍は「プログラミングWindows」、「Windows2000プログラミング標準講座」を参照しました。 深夜に入力したためとはいえ、表題の誤入力は直せないのかな。恥ずかしい。

関連するQ&A