重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

(VisualC++初心者です)
マウスポインタがコマンドボタン上に移動したのを判断するイベント、もしくはアルゴリズムはないでしょうか?

ボタン上にマウスポインタが移動したら音が出るというプログラムを作ろうとしています。

VisualBasicのようにコマンドボタンにもMouseMoveイベントがあるならそれを利用してGetFocusをしたりMidi音源から音を出したりできたのですが、vC++のコマンドボタンのイベントにはclickとDoubleClickしか見当たりません。
ClassWizardから探してもみつかりませんでした。

もしいい方法があれば教えてください。お願いします。

A 回答 (1件)

アルゴリズムというかボタン自体は子ウインドウです。


WM_MOUSEMOVE(MFCで自動生成するとOnMouseMoveかな?)で
ボタンをGetWindowRectして、RECTを取得し、
マウスポインタがRECT内部にあるかどうかを判定すればよいと
思います。

あるいはCButtonを継承してOnMouseMoveをオーバーライド
できるかもしれません。
    • good
    • 0
この回答へのお礼

ありがとうございます!
RECTの取得方法やオーバーライドの方法などはまだ理解できていませんが、イメージはつかめたので早速調べて試してみます!

お礼日時:2005/04/26 10:39

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!