初めまして。最近、APIを勉強し始めました学生です。早速質問なんですが、題の通りウィンドウクラスを登録する関数を作りたいんですが、その引数にプロシージャを持ってきたいんです。LRESULT CALLBACKを型にしてみたのですが無理でした。プロシージャの型はどうすればいいんでしょうか?
ウィンドウプロシージャですか?
WNDPROC 型だと思います。
LRESULT CALLBACK は戻り値と呼び出し規約の指定であって、関数の型ではありません。
かなり余計なことかもしれませんが、そのウインドウ登録クラスにウインドウプロシージャを引数として渡す必要はないのではないかと思います。
なぜかといいますと、たしかWNDCLASSEX構造体のメンバにはグローバル関数しか設定できないはずなので、わざわざ引数として渡さなくても、その登録関数内で使用できる関数のポインタを設定することになると思われます。(クラスのメンバ関数の場合は static な関数)
シャノンさん、ともたさん返信ありがとうございます!! シャノンさん、無事関数が出来ました。ありがとうございます! ともたさん、僕の作ろうとしている関数は、今2つのウィンドウプロシージャがあるのでそのために引数として必要なのです。
ツイート | ![]() |