リストとカスタム スクロール バーを備えたパネルであるカスタム WTL コントロールがあります。
class Panel
: public ATL::CWindowImpl<Panel>, public WTL::CDoubleBufferImpl<Panel> {
public:
DECLARE_WND_CLASS("Panel")
BEGIN_MSG_MAP_EX(Panel)
MSG_WM_CREATE(OnCreate)
MSG_WM_DESTROY(OnDestroy)
MSG_WM_SIZE(OnSize)
CHAIN_MSG_MAP(CDoubleBufferImpl<Panel>)
REFLECT_NOTIFICATIONS()
END_MSG_MAP()
スクロール バーは、OnCreate() のパネルによって作成されます。
m_scrollBar.Create(m_hWnd, WTL::CRect(...));
そのスクロール バーは、他の多くのダイアログ ウィンドウで正常に機能します。ただし、そのパネル コントロール内ではスクロール バーが表示されますが、マウス イベントはまったく受信されません。WM_MOUSEMOVE
パネルにハンドラーを追加すると、それが呼び出されます。
何が問題なのですか?