Memuatkan Sumber Menggunakan getClass().getResource()
Dalam percubaan anda untuk memuatkan imej untuk ikon aplikasi, anda menghadapi kesukaran menggunakan getClass().getResource(). Kaedah ini memuatkan sumber daripada laluan kelas, bukan laluan sistem fail.
Dalam contoh pertama anda, anda mengakses imej melalui URL menggunakan getClass().getResource. Kaedah ini mencari laluan kelas untuk sumber yang ditentukan. Apabila imej tidak ditemui di lokasi classpath yang disediakan, imgURL mengembalikan null.
Sebaliknya, mencipta ImageIcon secara langsung dengan menghantar dalam laluan fail sebagai rentetan berjaya memuatkan imej kerana ia membaca daripada sistem fail. Dalam kes ini, laluan merujuk terus kepada fail imej.
Untuk menangani isu ini, pastikan fail imej boleh diakses melalui laluan kelas. Ini biasanya melibatkan meletakkan imej dalam subdirektori dalam direktori projek. Contohnya, jika anda mencipta subdirektori bernama "imej" dan meletakkan fail imej di dalamnya, anda boleh mengakses imej menggunakan laluan sumber berikut:
java.net.URL imgURL = getClass().getResource("/images/my_image.png");
Sila ambil perhatian bahawa garis miring '/' di hadapan laluan sumber menunjukkan bahawa imej terletak pada akar laluan kelas, yang merupakan direktori peringkat atas projek.
Atas ialah kandungan terperinci Mengapakah getClass().getResource() Gagal Memuatkan Imej Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!