• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:教えてボタンの作り方について)

教えてボタンの作り方について

このQ&Aのポイント
  • win32APIを利用してC/C++でゲームを作る際に、ボタンのオリジナルなグラフィックスを作成する方法について教えてください。
  • リソースファイルを使用してボタンを配置する場合とウィンドウを作ってボタンを配置する場合のボタンデザインの違いについて教えてください。
  • XPのデザインのボタンをウィンドウに配置する方法を教えてください。

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

  • ベストアンサー
回答No.2

 こんばんは。 >>ボタンを作る時CreateWindow関数でボタンコントロールは作れるのですがその場合ボタンのグラフィックスをオリジナルのものにしてボタンを作る方法ってありますか? >>標準コントロールなのでやはりオリジナルのものは作れないのでしょうか?  MFCにはCBitmapButtonと言うクラスがあります。  http://msdn.microsoft.com/ja-jp/library/a3y45xs0(VS.80).aspx  WIN32APIで突き通すならオーナードローを行います。ボタンの場合は「WM_DRAWITEM」を処理します。  http://msdn.microsoft.com/en-us/library/bb775923(VS.85).aspx >>だとするとどの様にオリジナルのボタンを作ればよいのでしょうか?オリジナルのコントロールを作りたいです。  色々やり方は有ります。CreateWindow()で子ウィンドウを沢山作り、マウスのキャプチャーでボタン紛いな動きをさせる事も可能です。  スタイルは「WS_CHILD」です。  後、ウィンドウの変形にはリージョンを使用します。最も複雑な形状を実現するには、以下を使用します。  http://msdn.microsoft.com/ja-jp/library/cc428592.aspx >>もう一つ質問があります。ダイアログボックスなどでリソースファイルを使ってボタンを配置する場合とウィンドウを作ってボタンを配置する場合とでボタンのデザインが違います。OSはXPを使用しているのですがXPのデザインのボタンをウィンドウに配置したい場合の方法を教えてください。  もしかしたら、以下が手掛かりになるかもしれません。  http://zoosir.hp.infoseek.co.jp/tips/control/control01.htm

yozakura20
質問者

お礼

お返事ありがとうございます。 オーナードローという方法があったんですね。なんとかボタンを作ることができそうです。XPのデザインにもすることができました。

その他の回答 (1)

  • SAYKA
  • ベストアンサー率34% (944/2776)
回答No.1

オリジナルボタンは 画像にボタンクリックと同じイベントを突っ込んで作る方法と 標準ボタンclassを継承していじる方法と あるんじゃないのかな。 どっちが簡単そうかは、それぞれ調べてみたら判るんじゃない?

yozakura20
質問者

お礼

お返事ありがとうございます。 標準ボタンのclassがどこにあるかわからず今の自分の技量ではできそうにありませんでした;; 画像にイベントを自作してボタンを作る方法は自分でもできそうです。 参考になりました。

関連するQ&A