私の質問は、Win32 API を扱うのに時間を費やした人にとっては比較的簡単だと思います。
私の質問は:
WNDCLASSEX インスタンスを初期化した後、「RegisterClassEx」関数を使用してそれを「登録」する必要があるのはなぜですか? なぜそうするのですか?この登録の意味と、どのような場合に登録する必要がありますか?
私の質問は、Win32 API を扱うのに時間を費やした人にとっては比較的簡単だと思います。
私の質問は:
WNDCLASSEX インスタンスを初期化した後、「RegisterClassEx」関数を使用してそれを「登録」する必要があるのはなぜですか? なぜそうするのですか?この登録の意味と、どのような場合に登録する必要がありますか?
関数名のクラスという単語は重要です。C++、Delphi、Java、C# などのオブジェクト指向言語でコードを記述する場合、classキーワードを使用して、動作を持つオブジェクトを作成します。しかし、winapi は、そのような機能を持たない言語である C から使用するように設計されています。RegisterClassEx() 関数はそのエミュレーションであり、名前付きクラスからその動作を「派生」させるウィンドウを作成できます。この動作はオーバーライドできます。そのクラス名を使用して作成したすべてのウィンドウは、同じように動作します。
渡す WNDCLASSEX 構造体は、ウィンドウに既定の動作を与えます。この構造体の最も重要なメンバーは次のとおりです。
Windows では、ウィンドウを再利用する予定がない場合でも、RegisterClassEx() を呼び出す必要があります。これは、独自のコードでの関数の最も一般的な使用法です。他のコードが使用できるコントロールやウィンドウを実装するライブラリを作成するまで、それを実際に利用し始めることはありません。「編集」のように。