- 208 名前:デフォルトの名無しさん mailto:sage [2010/01/06(水) 01:14:54 ]
- >>189
ない。だから、少し間接的な方法をとる。 ウィンドウハンドルに好きな値を関連付ける機能があるので、オブジェクトへのポインタを登録しておくというもの。 こんな関数をグローバルまたはクラスの静的メンバ関数として定義し、 SetWindowLongPtr(hButton, GWLP_WNDPROC, (LONG_PTR)ButtonSubWndProcEntry)のように渡す。 (この問題とは直接関係ないが、SetWindowLongPtr使え) あと、SetWindowLongPtr呼ぶ前に、SetProp(hButton, TEXT("MyClass object"), オブジェクトへのポインタ);する。 LRESULT CALLBACK ButtonSubWndProcEntry(HWND hwnd, UINT msg, WPARAM wp, LPARAM lp) { MyClass* p = static_cast<MyClass*>(GetProp(hwnd, TEXT("MyClass object"))); return p->ButtonSubWndProc(hwnd, msg, wp, lp); }
|

|