Rumah >Java >javaTutorial >Mengapa JTabbedPane Swing Saya Tidak Mengemas kini Rupa dan Rasanya Selepas Menambah Tab Baharu?

Mengapa JTabbedPane Swing Saya Tidak Mengemas kini Rupa dan Rasanya Selepas Menambah Tab Baharu?

Barbara Streisand
Barbara Streisandasal
2024-11-30 06:53:19852semak imbas

Why Doesn't My Swing JTabbedPane Update Its Look and Feel After Adding a New Tab?

Look and Feel Tidak Kemas Kini dalam Swing JTabbedPane

Anda telah mencipta aplikasi dalam Java Swing yang membolehkan pengguna menukar rupa dan rasa daripada menu. Selepas menambah tab baharu dalam JTabbedPane, bagaimanapun, perubahan dalam rupa dan rasa tidak ditunjukkan dalam tab baharu.

Penyelesaian

Untuk menangani isu ini, gabungkan pendekatan yang dicadangkan oleh @Andrew dan penyelesaian klasik daripada swingjs.org:

Window windows[] = Frame.getWindows();
for (Window window : windows) {
    SwingUtilities.updateComponentTreeUI(window);
    window.invalidate();
    window.validate();
    window.repaint();
}

Kod ini mengemas kini lihat dan rasa, membatalkan dan mengesahkan tingkap serta mengecatnya semula untuk memastikan pemaparan yang betul.

Atas ialah kandungan terperinci Mengapa JTabbedPane Swing Saya Tidak Mengemas kini Rupa dan Rasanya Selepas Menambah Tab Baharu?. 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