Saya ingin menambahkan JTable
ke JPanel
yang tata letak adalah null
. JPanel
mengandung komponen lain. Saya harus menambahkan JTable
pada posisi yang tepat.
235
Saya ingin menambahkan JTable
ke JPanel
yang tata letak adalah null
. JPanel
mengandung komponen lain. Saya harus menambahkan JTable
pada posisi yang tepat.
Jawaban:
Contoh Tata Letak Bersarang / Kombinasi
Tutorial Java memiliki informasi lengkap tentang cara menggunakan manajer tata letak. Lihat Komponen Laying Out Inside a Container untuk detail lebih lanjut.
Salah satu aspek tata letak yang tidak tercakup dengan baik oleh tutorial adalah tata letak bersarang, menempatkan satu tata letak di dalam yang lain untuk mendapatkan efek kompleks.
Kode berikut menempatkan berbagai komponen ke dalam bingkai untuk menunjukkan cara menggunakan tata letak bersarang. Semua tata letak yang ditetapkan secara eksplisit ditampilkan sebagai batas-judul untuk panel di mana mereka digunakan.
Aspek penting dari kode adalah:
PLAF Nimbus
NestedLayoutExample.java
Tembakan Layar Lainnya
PLAF Windows
Mac OS X Aqua PLAF
Ubuntu GTK + PLAF
sumber
Jangan gunakan tata letak nol. Belajar menggunakan LayoutManagers:
http://download.oracle.com/javase/tutorial/uiswing/layout/using.html
LayoutManagers memungkinkan Anda untuk menangani pengubahan ukuran benda atau jumlah komponen dinamis dengan benar. Mereka mungkin tampak menakutkan pada awalnya, tetapi mereka sepadan dengan usaha untuk belajar.
sumber
Seperti yang saya ingat, tata letak nol berarti posisi absolut sehingga akan sangat sulit bagi Anda untuk menghitung titik X untuk lokasi sudut kiri atas JTable Anda. Tetapi jika Anda hanya ingin memiliki semua komponen panel satu per satu Anda dapat menggunakan manajer FlowLayout () sebagai
atau jika Anda perlu mengisi panel Anda harus menggunakan GridLayout () sebagai ...
Semoga berhasil
sumber
Jika Anda menggunakan manajer tata letak nol, Anda selalu harus menetapkan batas-batas komponen. Itulah masalah dalam kasus Anda.
Anda harus melakukan apa yang semua orang sarankan di sini dan pergi dan menggunakan beberapa manajer tata letak percaya mereka menghemat waktu. Pergi dan periksa tutorial di posting @ jzd.
Selamat menikmati, Boro.
sumber
JTable
harus ditambahkan ke dalamJScrollPane
yang sebenarnya harus ditambahkan ke dalamJPanel
.The
JPanel
harus memiliki beberapa manajer layout.Jika Anda tidak peduli tentang ketepatan ukuran komponen, Anda dapat menggunakan pure
BorderLayout
dan menggabungkannya denganFlowLayout
danGridLayout
. jika Anda membutuhkan ketepatan - gunakan jgoodiesFormLayout
.Ini
FormLayout
benar-benar rumit, tetapi Anda bisa bermain sedikit denganWindowBuilder
(yang tertanam dalam Eclipse) dan melihat kode yang dihasilkannya. Ini mungkin terlihat rumit tetapi itu hanyalah ketidaktahuan.Semoga berhasil.
sumber
Pertama, Anda harus mempertimbangkan manajer Layout lainnya dengan serius, misalnya BorderLayoutManager (JPanel baru (BorderLayout baru ())) adalah awal yang baik.
Juga ketika mendesain dialog Anda, ingatlah bahwa Anda dapat dan harus membuat layout Anda : satu JPanel di dalam JPanel lain (misalnya GridLayout di dalam BorderLayout). Harap dicatat: dialog 'baik' harus mengubah ukuran dengan benar , sehingga jika pengguna mengubah ukuran Frame Anda, Anda ingin secara otomatis memperluas objek informasi Anda seperti tabel Anda, dan tidak menunjukkan area besar latar belakang JPanel. Itu sesuatu yang tidak bisa Anda capai dengan NullLayout.
Tapi mungkin ada kasus - di suatu tempat di dunia besar ini - di mana NullLayout adalah masalahnya. Jadi inilah sebuah contoh:
sumber
Ketika komponen memiliki tata letak "null", Anda harus mengelola tata letak sendiri, itu berarti Anda harus menghitung dimensi dan lokasi untuk anak-anak komponen untuk memutuskan di mana mereka diambil. Cukup membosankan kecuali itu mutlak diperlukan.
Jika Anda benar-benar menginginkan kontrol berbutir halus itu, mungkin coba GridBagLayout terlebih dahulu sebelum menjadi bingung dengan pengaturan UI.
sumber
Anda dapat menggunakan kode berikut. Untuk menambahkan JTable ke JPanel.
sumber
Semoga ini membantu.
sumber
model tabel tergantung pada kebutuhan Anda
sumber
Coba ini.
sumber