Rumah >Java >javaTutorial >setSize() vs. setPreferredSize() dalam Java: Bilakah Saya Perlu Menggunakan Yang Mana?

setSize() vs. setPreferredSize() dalam Java: Bilakah Saya Perlu Menggunakan Yang Mana?

Susan Sarandon
Susan Sarandonasal
2024-12-03 06:08:18465semak imbas

setSize() vs. setPreferredSize() in Java: When Should I Use Which?

Memahami Perbezaan: setSize() vs setPreferredSize() dalam Java

Dalam hierarki komponen Java, kaedah setSize() dan setPreferredSize( ) mempunyai tujuan yang berbeza. Penggunaan yang sesuai bergantung pada kehadiran pengurus susun atur dalam bekas induk komponen.

setSize():

  • Perlu digunakan apabila bekas induk melakukannya tidak mempunyai pengurus reka letak.
  • Mengubah suai saiz komponen peringkat atas (JFrames, JWindows) dan subkomponen dalam anak tetingkap tatal biasanya melibatkan penggunaan setSize().
  • Penggunaan langsung diperlukan untuk subkomponen tanpa induk pengurus reka letak.

setPreferredSize():

  • Dikhaskan untuk digunakan dengan bekas induk yang menampilkan pengurus susun atur (cth., BorderLayout, FlowLayout).
  • Disertai dengan kaedah yang berkaitan: setMinimumSize() dan setMaximumSize().
  • Pengurus susun atur biasanya mendapatkan semula saiz pilihan, kemudian gunakan setSize() dan setLocation() untuk meletakkan komponen mengikut kepada peraturan reka letak yang ditentukan.
  • Sebagai contoh, BorderLayout melaraskan sempadan wilayah "utara" untuk memadankan saiz pilihan komponennya, berpotensi mengubah saiznya berdasarkan dimensi JFrame keseluruhan dan komponen lain dalam reka letak.

Aplikasi Praktikal:

  • Untuk JFrames dan komponen peringkat teratas yang lain, setSize() ialah disyorkan.
  • Untuk JPanels dan komponen yang berada dalam reka letak terurus, setPreferredSize() ialah pilihan pilihan.

Atas ialah kandungan terperinci setSize() vs. setPreferredSize() dalam Java: Bilakah Saya Perlu Menggunakan Yang Mana?. 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