- ベストアンサー
button をクリックしてもへこませなくするには?
ご存知の方、教えていただけますか? 配置したボタンを押すことが可能で(visible,enabledともにTrue) 押した後(機能させた後)画像的に凹まなくするにはどのプロパティを設定すれば良いですか? スミマセン!よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
★ボタン・コントロールをサブクラス化すると実現可能です ・ボタン・コントロールのプロシージャ関数のアドレスを取得して、新たに自作プロシージャを 指定のボタン・コントロールに設定します。 ・そして、自作プロシージャ内で『WM_LBUTTONDOWN』と『WM_LBUTTONUP』メッセージを受け取って 処理を行います。処理するときにボタンの凹みの表示をしなければ良いのです。あとは親ウインドウへ 『WM_COMMAND』メッセージを送り、『ボタンが押されたよ』と通知します。 ・この方法でボタン・コントロールがクリックされても凹まないボタンが作れますが、activeX で ボタン・コントロールのプロシージャ関数のアドレスを取得できますか? ・『GetWindowLong』、『SetWindowLong』関数などで取得と設定が出来ます。 ・とりあえず『サブクラス化』すれば出来そうですとアドバイスします。 ・プロパティなどでは簡単に実現できません。 ・以上。おわり。
その他の回答 (2)
- khazad-lefty
- ベストアンサー率44% (296/668)
No1と同じことではあるのですが。 逆に言うと、へこませる必要がないのならボタンである必要はないと思います。 たとえば、ラベルでも、Clickイベントを認識することはできるし、3d表示にしたらボタンっぽい見た目になるわけだし。 「ボタン」でなければいけない理由はなんでしょうか?
お礼
ありがとうございます。 初めは標準のpictureBoxで作っていたのですが、兄弟関係の透過処理が出来ない使用らしいので、 他社製品のactiveXのコントロール?を使用することになり、兄弟関係の透過処理はできるのですが透過処理が出来るコントロールがボタンしかないようなので、クリックすると凹んでしまいます。 というわけなのです...
- OKbokuzyo
- ベストアンサー率43% (130/296)
buttonコントロールでは不可能です。 簡単なのはlabelコントロールで代用するか、 PictureBoxかなんかで自作スイッチを表示させてやるのでしょうね。
お礼
そうなんですか... 残念です。 ありがとうございました。
お礼
ありがとうございます!! 試してみます。