• ベストアンサー

button をクリックしてもへこませなくするには?

ご存知の方、教えていただけますか? 配置したボタンを押すことが可能で(visible,enabledともにTrue) 押した後(機能させた後)画像的に凹まなくするにはどのプロパティを設定すれば良いですか? スミマセン!よろしくお願いします。

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

  • ベストアンサー
  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.3

★ボタン・コントロールをサブクラス化すると実現可能です ・ボタン・コントロールのプロシージャ関数のアドレスを取得して、新たに自作プロシージャを  指定のボタン・コントロールに設定します。 ・そして、自作プロシージャ内で『WM_LBUTTONDOWN』と『WM_LBUTTONUP』メッセージを受け取って  処理を行います。処理するときにボタンの凹みの表示をしなければ良いのです。あとは親ウインドウへ  『WM_COMMAND』メッセージを送り、『ボタンが押されたよ』と通知します。 ・この方法でボタン・コントロールがクリックされても凹まないボタンが作れますが、activeX で  ボタン・コントロールのプロシージャ関数のアドレスを取得できますか? ・『GetWindowLong』、『SetWindowLong』関数などで取得と設定が出来ます。 ・とりあえず『サブクラス化』すれば出来そうですとアドバイスします。 ・プロパティなどでは簡単に実現できません。 ・以上。おわり。

psychesine
質問者

お礼

ありがとうございます!! 試してみます。

その他の回答 (2)

回答No.2

No1と同じことではあるのですが。 逆に言うと、へこませる必要がないのならボタンである必要はないと思います。 たとえば、ラベルでも、Clickイベントを認識することはできるし、3d表示にしたらボタンっぽい見た目になるわけだし。 「ボタン」でなければいけない理由はなんでしょうか?

psychesine
質問者

お礼

ありがとうございます。 初めは標準のpictureBoxで作っていたのですが、兄弟関係の透過処理が出来ない使用らしいので、 他社製品のactiveXのコントロール?を使用することになり、兄弟関係の透過処理はできるのですが透過処理が出来るコントロールがボタンしかないようなので、クリックすると凹んでしまいます。 というわけなのです...

  • OKbokuzyo
  • ベストアンサー率43% (130/296)
回答No.1

buttonコントロールでは不可能です。 簡単なのはlabelコントロールで代用するか、 PictureBoxかなんかで自作スイッチを表示させてやるのでしょうね。

psychesine
質問者

お礼

そうなんですか... 残念です。 ありがとうございました。

関連するQ&A