0
SwingがJavaで完全に記述され、ヘビーウェイト(HW)の祖先のウィンドウを再利用する場合、その背後にある論理は何ですか? スイングがHWコンポーネントクラスを拡張すると、HWコンポーネントはネイティブコールを呼び出すため、ネイティブコールが呼び出されるようになります。 しかし、スイングは軽量なので、私の理解は失敗していますか?SwingがコードレベルでHeavyWeight Ancestorのネイティブウィンドウを再利用する方法
最終的に描画はネイティブ環境で実行されていますが、今はインターフェイスがこのステップを処理するために存在し、このバッファがグラフィックス描画を担当しているので、ヘビーウェイトとライトウェイトコンポーネントが両方ともほぼ同じ時間か両方とも高価であるとみなすことができます –
私が記述したこと以外にも、ネイティブ操作がいつどこで適用されるかはAWTの内部実装によって決まります。実装によっては、単にイメージバッファをコピーすることもあれば、Graphics2Dリクエストを使用可能なキャンバス上のネイティブグラフィックプリミティブに変換するものもあります。 – technomage