私は自分が書いているゲームにJava2Dを使用していますが、他のスイングコンポーネントとの統合を開始するまで、Java2Dの使用に問題はありませんでした。私の問題は、JFrameに追加する最初のコンポーネントが描画先のキャンバスではない場合、テキストペインのスクロールバーにマウスを合わせると奇妙なアーティファクトが表示されることです。アプリケーションを実行するたびに発生します。私が最初にキャンバスを持っているとき、問題はありません。
何らかの理由で、これはデフォルトのJava2Dパイプラインが使用されている場合(sun.java2d.d3d = true)にWindowsでのみ発生するように見え、アーティファクトが発生します。sun.java2d.opengl=trueまたはsun.java2d.noddraw=falseおよびsun.java2d.d3d=falseを設定すると、発生しません。
これはDirect3DJava2Dパイプラインのある種のバグだと思いますか?私はそれを簡単に回避できますが、他の誰かがそのような問題に遭遇したかどうか知りたいですか?最新のJDK7u7を実行していますが、以前のバージョンでも発生します。ウィンドウを最小化して復元すると、アーティファクトは消えて、アプリケーションを再起動するまで戻らないことに注意してください。
アーティファクトあり:
アーティファクトなし(JLabelイメージの代わりに最初にキャンバスを追加した後):
誰かがこれについてさらに情報を持っているなら、私はそれをいただければ幸いです。ありがとう!