Rumah >Java >javaTutorial >Mengapa Swing Rendering Muncul Herot dalam IntelliJ IDEA dengan JDK 1.8?

Mengapa Swing Rendering Muncul Herot dalam IntelliJ IDEA dengan JDK 1.8?

Susan Sarandon
Susan Sarandonasal
2024-11-03 08:31:03271semak imbas

Why Does Swing Rendering Appear Distorted in IntelliJ IDEA with JDK 1.8?

Isu Rendering Swing dalam JDK 1.8

Penerangan Isu:

Dalam IntelliJ IDEA dengan JDK 1.8.0, Swing GUIs mempamerkan masalah rendering. Paparan fon kelihatan herot, dan butang kehilangan teks apabila tetikus melayang di atasnya. Isu ini tiada apabila menggunakan JDK 1.7.0_40. Walaupun kemas kini pemandu dan langkah penyelesaian masalah lain, masalah masih berterusan.

Langkah Penyelesaian:

  1. Semak sama ada isu itu berterusan dengan projek yang dipermudahkan: Buat projek asas dengan hanya kawasan teks dan butang.
  2. Mulakan aplikasi daripada Event Dispatch Thread (EDT): Gunakan SwingUtilities.invokeLater() untuk memastikan GUI dimulakan dan dikemas kini pada EDT.
  3. Tetapkan pembolehubah persekitaran global "J2D_D3D" kepada palsu:

    • Buat pembolehubah persekitaran bernama J2D_D3D dengan nilai palsu (tanpa petikan). Ini akan melumpuhkan penggunaan Direct3D sistem Java 2D.

Contoh:

<code class="java">public static void main(String[] args) {
    SwingUtilities.invokeLater(SimpleClient::new);

    System.out.println("Main EDT: " + SwingUtilities.isEventDispatchThread());
}</code>

Hasil Jangkaan:

Selepas menetapkan J2D_D3D kepada palsu, GUI harus dipaparkan dengan betul dalam kedua-dua persekitaran JDK 1.7 dan JDK 1.8.

Atas ialah kandungan terperinci Mengapa Swing Rendering Muncul Herot dalam IntelliJ IDEA dengan JDK 1.8?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn