私はしばらくの間QTを使用していて、WindowsでのGUIの描画方法について何か疑問に思っていました。
QPainterを使用して、すべてのボタン、編集ボックス、コンボボックス、チェックボックス、タブなどを実際に単独でペイントしているのでしょうか、それともネイティブウィジェットを使用しているのでしょうか。
カスタムスタイリングとスキニングを実行できるという事実は、実際にはQPainterを使用してすべてを描画することを示唆していますが、この種のコードをどのように維持できるでしょうか。Qt開発者は、ウィンドウシステムの全機能を本当にリバースエンジニアリングしましたか?それはやや無駄ではありませんか?
これに対するもう1つの証拠は、QtGUIでSpy++を使用している場合、すべてのウィンドウが「QWidget」に等しいクラス名で表示されていることです。ネイティブウィジェットを使用している場合、これらは「BUTTON」、「STATIC」などではありませんか?
他のプラットフォームではどうですか?Max OSXでも同じことをしていますか?