Skip to content

trihajikhr/javafx-sandbox

JavaFX Sandbox

Tempat eksplorasi, latihan, dan eksperimen pribadi dengan JavaFX. Repo ini berfungsi sebagai buku catatan digital untuk berbagai fitur, komponen, dan pola desain JavaFX.

Tujuan Utama

Repo ini dibuat untuk:

  • Belajar Cepat: Mengembangkan contoh-contoh kecil dan terisolasi untuk memahami cara kerja komponen JavaFX tertentu (seperti TableView, ListView, atau animasi).
  • Eksperimen Bebas: Menguji berbagai pola desain (misalnya, MVC atau MVVM) dalam konteks aplikasi JavaFX.
  • Referensi Praktis: Menyimpan snippets kode yang sering dibutuhkan untuk diakses kembali dengan mudah di proyek lain.

Struktur Proyek

Setiap folder atau package di dalam source code dirancang untuk menjadi contoh yang mandiri dan terisolasi yang fokus pada satu fitur atau konsep spesifik.

Direktori/Package Deskripsi
src/main/java/app/Main Tempat menjalankan aplikasi Java berbasis JavaFX
src/main/java/resources/fxml Folder konfigurasi file FXML disimpan.
src/main/java/resources/css Eksperimen dengan styling JavaFX menggunakan CSS dan Pseudo-classes.

Persyaratan dan Cara Menjalankan

Persyaratan

Pastikan kamu memiliki:

  • Java Development Kit (JDK): Versi 17 atau yang lebih baru direkomendasikan.
  • Build Tool: Proyek ini menggunakan Maven (atau Gradle, sesuaikan).

Note

Proyek ini menggunakan Maven, dengan compiler option versi 20, dan DJK versi 20. Lihat konfigurasi pom.xml di pom file.

Menjalankan Contoh

Karena repo ini adalah koleksi main class yang berbeda:

  1. Clone repo ini ke mesin lokalmu.
  2. Buka proyek di IDE favoritmu (IntelliJ IDEA, VS Code, atau Eclipse).
  3. Untuk menjalankan suatu contoh, navigasikan ke package yang diinginkan (misalnya, app.Main).
  4. Jalankan class yang berisi method main().

Important

Jika kamu menggunakan Java versi modular, pastikan konfigurasi IDE atau build tool yang digunakan sudah menyertakan JavaFX SDK sebagai modul runtime.

Daftar Dokumentasi & Sumber Daya Utama

Untuk bisa menggunakan JavaFX dan Maven, gunakan dokumentasi dan panduan yang tersedia di repository ini. Berikut setup dan konfigurasi awal JavaFX yang bisa diikuti:

Caution

Tidak ada pengembangan yang berjalan tanpa Error. Ada banyak error ketika berurusan dengan JavaFX dan Maven. Kunjungi Error-log untuk melihat dokumentasi Error yang terjadi.

Untuk dokumentasi resmi dan materi pembelajaran yang lebih mendalam, silakan kunjungi:

Layout Manager JavaFX

Bagian ini menyajikan panduan terperinci dan terstruktur mengenai setiap Layout Pane (Kontainer) utama dalam JavaFX. Dokumentasi ini berfokus pada mekanisme tata letak unik dari masing-masing kontainer, membantu Anda memilih alat yang tepat untuk kebutuhan desain antarmuka pengguna (UI) Anda.

Setiap entri kontainer dirancang dengan format yang konsisten (Konsep Dasar, Mekanisme Tata Letak, dan Kasus Penggunaan Populer) untuk memudahkan perbandingan dan referensi cepat.

Klik di sini untuk melihat Daftar Lengkap 19 Kontainer JavaFX

Daftar Kontainer Utama JavaFX

Gunakan tabel di bawah ini untuk mengakses dokumentasi lengkap setiap Layout Pane:

Kontainer Deskripsi Singkat Fungsi Fokus Utama
Accordion Mengelola sekumpulan TitledPane yang dapat dikembangkan, hanya satu yang dapat terbuka pada satu waktu. Hemat Ruang & Struktur Hierarkis (FAQ, Menu Pengaturan)
AnchorPane Memposisikan Node dengan "menambatkannya" (menguncinya) relatif terhadap tepi kontainer. Tata Letak Absolut Fleksibel & Peregangan Konten Penuh
BorderPane Mengatur konten dalam lima wilayah tetap: Top, Bottom, Left, Right, dan Center. Struktur Jendela Aplikasi Standar & Tata Letak Utama (Root)
ButtonBar Mengatur tombol aksi secara konsisten sesuai dengan standar pedoman desain platform OS. Tombol Aksi Dialog & Konsistensi Platform
DialogPane Kontainer khusus yang menyediakan struktur baku untuk dialog (Header, Content, ButtonBar). Konstruksi Dialog Standar yang Cepat
FlowPane Mengatur elemen dalam satu baris/kolom dan membungkus ke baris/kolom berikutnya jika ruang habis. Tata Letak yang Adaptif & Toolbar Responsif
GridPane Tata letak berbasis matriks baris dan kolom. Formulir Kompleks & Penjajaran Presisi
HBox Mengatur Node anak dalam satu baris Horizontal lurus. Toolbar & Susunan Tombol Berdampingan
Pane Kontainer dasar yang tidak memiliki aturan tata letak; posisi Node ditentukan oleh koordinat layoutX dan layoutY. Kanvas Gambar & Tata Letak Manual/Absolut
ScrollPane Menyediakan bilah gulir untuk konten tunggal yang ukurannya lebih besar dari kotak pandang (viewport). Manajemen Konten Berlebihan (Formulir Panjang, Teks Besar)
SplitPane Membagi ruang menjadi dua atau lebih area dengan pembagi yang dapat diseret (draggable divider). Tata Letak Master-Detail & Panel yang Dapat Disesuaikan
StackPane Menumpuk semua Node anak satu di atas yang lain di lokasi pusat. Overlay (Lapisan Pemuatan) & Pergantian Tampilan (Screen Switching)
Tab Merupakan item anak tunggal yang menampung Node konten di dalam kontainer TabPane dan memiliki judul yang dapat diklik. Manajemen Halaman Konten Individual & Navigasi Antar Tampilan
TabPane Kontrol yang menampung banyak konten, diakses melalui tab (tabulasi) yang berbeda. Mengelompokkan Informasi & Efisiensi Ruang
TextFlow Mengatur urutan Node teks dan non-teks agar mengalir dan membungkus seperti paragraf. Teks dengan Gaya Campuran & Elemen Tertanam Sebaris
TilePane Mengatur Node anak dalam ubin yang memiliki ukuran seragam. Galeri Thumbnail & Menu Ikon yang Rapi
TitledPane Kontrol kontainer yang dapat menyembunyikan atau menampilkan konten di bawah judul interaktif. Mengelola Kepadatan Informasi Vertikal & Pengaturan Opsional
ToolBar Kontainer yang dirancang untuk menampung sekumpulan komponen yang dapat diakses dengan cepat, dipisahkan oleh Separator. Aksi Cepat & Navigasi Utama Aplikasi
VBox Mengatur Node anak dalam satu kolom Vertikal lurus. Sidebar Navigasi & Tumpukan Elemen Formulir

Kontribusi

Repo ini bersifat pribadi untuk eksplorasi. Namun, jika kamu menemukan bug di salah satu contoh kode atau memiliki saran perbaikan, silakan buat issue!

About

☕ Dokumentasi komprehensif yang menyoroti praktik, mekanisme, dan struktur kerja JavaFX pada proyek berbasis Maven.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors