SlideShare a Scribd company logo
JAVA GUI
BAYU RIMBA PRATAMA, ST, M.KOM
INTRO
Java GUI memiliki 3 package: abstract windows kit (AWT), Swing
toolkit dan JavaFX.
Kita akan fokus pada Swing.
Komponen dari package Swing, memiliki prefix J di depannya
(misal JFrame, JWindows, dll).
WHY SWING?
AWT components is heavy
weighted thus the
execution time of AWT is
more than other. It has
comparatively less
functionality as compared
to others. If using AWT,
you have to implement a
lot of things yourself.
Swing is its mature and
stable. Swing provides a
rich set of components.
With Swing, we can create
complex and highly
customizable interfaces
using a variety of layout
managers, containers, and
components.
JavaFX has a modern
architecture and supports
a wide range of UI
components, animations,
multimedia features,
including hardware
acceleration and 3D
graphics. This makes it
ideal for creating visually-
rich and interactive
applications.
JFRAME
 Every application we build extends the JFrame
object, meaning our applications acquire all the
characteristics of a frame
 The Frame is a container object. One feature of
a container object is that if its visible property is
set to false, all controls will become invisible
Frame Properties
title Frame windows title
font Font name, style, size
background Frame background color
foreground Color of text or graphic
width Width of frame
height Height of frame
resizable Indicating frame is fixed sized or not
visible If false, hide frame (and all its
controls)
JFRAME
MOVE JFRAME TO THE CENTER OF SCREEN
 Buat atribut baru dengan tipe class Dimension
 Hitung posisi X dan posisi Y
 Gunakan method setLocation()
LAYOUT MANAGER
FlowLayout GridLayout BoxLayout
BorderLayout (none)
EXAMPLE FLOW LAYOUT
 Tampilan program:
 Posisi component bersifat dinamis /
menyesuaikan dengan ukuran Frame
 Apabila ukuran Frame diubah (resize), maka letak
component akan menyesuaikan (ikut berubah)
EXAMPLE GRID LAYOUT
 Tampilan program:
 Apabila ukuran Frame diubah (resize) maka letak
component akan relative tetap (tidak berubah),
hanya ukuran nya saja yang bertambah.
 Grid Layout akan menyimpan
widget/component pada cell masing-masing
sesuai urutannya
EXAMPLE BOX LAYOUT
 Tampilan program:
 Box Layout dapat menyusun component secara
vertical atau horizontal
 Dalam contoh ini, component disusun secara
horizontal (X_AXIS, line code: 14)
EXAMPLE BORDER LAYOUT
 Tampilan program:
 Setiap component ditempatkan sesuai dengan
arah mata angin
EXAMPLE NONE LAYOUT
 Tampilan program:
 Apabila layoutManager bernilai null maka setiap
component perlu dipetakan ukuran dan posisi
absolute-nya menggunakan method setBounds()
 Karena posisi component bersifat absolute, bila
Frame diperbesar maka posisi component akan
tetap
ACTIONLISTENER
 Bagaimana agar program dapat berinteraksi dengan user?  gunakan interface ActionListener
 Buat project baru dengan nama: SimpleCalc
ACTIONLISTENER
 Tambahkan Class baru  Beri nama class: SimpleCalculator
 Beri superclass JFrame dan interface
ActionListener
ACTIONLISTENER
 Terdapat error pada Class tersebut. Ikuti hints
dari netbeans dan pilih Implements all abstract
methods
 Class tersebut akan meng-override method
actionPerformed()
 Copy Paste source code SimpleCalculator.java
dari sini: https://pastebin.com/qUE8kdAq
JAVA GUI DEVELOPMENT USING NETBEANS
 Buat Project Baru, misal : DemoGui2
 Klik kanan pada main package, pilih New > JFrame Form…
JAVA GUI DEVELOPMENT USING NETBEANS
 Beri nama class name: LoginForm
 Klik tombol Finish
JAVA GUI DEVELOPMENT USING NETBEANS
 Tampilan design GUI editor
JAVA GUI DEVELOPMENT USING NETBEANS
 Klik sub tab Source (1), tambahkan setVisibile(true) pada constructor (2), delete main method (3).
JAVA GUI DEVELOPMENT USING NETBEANS
 Pada DemoGui2.java, ubah body main method menjadi seperti berikut, lalu run program.
JAVA GUI DEVELOPMENT USING NETBEANS
 Dengan menggunakan Palette, buat tampilan LoginForm seperti pada gambar di bawah ini.
JAVA GUI DEVELOPMENT USING NETBEANS
 Pada package yg sama, Buat JFrame Form dan beri nama class : MainForm
JAVA GUI DEVELOPMENT USING NETBEANS
 Pada MainForm.java, hapus main method. Lalu tambahkan atribut prevFrame dan setter method nya
JAVA GUI DEVELOPMENT USING NETBEANS
 Pada tampilan Design MainForm, tambahkan button Logout. Lalu double Click button tersebut. Anda
akan diarahkan pada method yang akan dipanggil bila button tersebut di-klik.
 Tambahkan line of code seperti pada gambar di kanan
JAVA GUI DEVELOPMENT USING NETBEANS
 Pada source code class LoginForm, tambahkan attribute dengan tipe class MainForm seperti pada line of
code pada gambar di bawah ini.
JAVA GUI DEVELOPMENT USING NETBEANS
 Pada tampilan Design LoginForm, double click button Login. Anda akan diarahkan pada method yang
akan dipanggil bila button tersebut di-klik.
 Tambahkan line of code seperti pada gambar di kanan, lalu Run program
JAVA GUI DEVELOPMENT USING NETBEANS
 Ketika Anda klik Logout, username dan password yang sebelumnya sudah diinputkan masih tersimpan
pada text field dan password field.
 Latihan e-Learning:
 Buat agar ketika user meng-klik Logout, username dan password yang sebelumnya sudah diinputkan menjadi
hilang lagi!
 Buat agar ketika LoginForm selalu muncul pada tengah layar!
 Buat agar ketika MainForm muncul selalu dalam ukuran maximal screen! Atur minimal size nya di 600 x 600!
 Hapus tombol Logout pada MainForm. Tambahkan menu bar yang terdiri dari File dan Help. File memiliki sub
menu Logout dan Exit. Help memiliki sub menu About.
 Sub Menu Logout untuk kembali ke LoginForm. Sub Menu Exit utk keluar. Keduanya disertai dengan konfirmasi.
 Sub Menu About menampilkan creator. Munculkan Nama dan NPM Anda.
 Cobalah untuk mengganti icon JFrame!
THANK YOU

More Related Content

PDF
[PBO] Pertemuan 11 - GUI Java Desktop
rizki adam kurniawan
 
PDF
Modul PBO Bab-08 - Java GUI
Rakhmat Dedi Gunawan
 
DOCX
Laporan praktikum modul 1 (pemrograman swing)
Devi Apriansyah
 
PDF
Modul Praktikum Pemrograman Berorientasi Objek (Chap.10)
Debby Ummul
 
PDF
Pocket book window builder eclipse
resarahadian
 
PDF
Membuat aplikasi-sederhana-menggunakan-java
Farichah Riha
 
DOCX
Laporan 6
Joshua S
 
DOCX
Laporan praktikum modul 4 (pemrograman applet)
Devi Apriansyah
 
[PBO] Pertemuan 11 - GUI Java Desktop
rizki adam kurniawan
 
Modul PBO Bab-08 - Java GUI
Rakhmat Dedi Gunawan
 
Laporan praktikum modul 1 (pemrograman swing)
Devi Apriansyah
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.10)
Debby Ummul
 
Pocket book window builder eclipse
resarahadian
 
Membuat aplikasi-sederhana-menggunakan-java
Farichah Riha
 
Laporan 6
Joshua S
 
Laporan praktikum modul 4 (pemrograman applet)
Devi Apriansyah
 

Similar to Presentasi latihan pemrograman Java GUI menggunakan SWING (20)

PPTX
Android Workshop beginner
Muhammad Iskandar Dzulqornain
 
PDF
Modul praktikum-pbo-5-swing
Agung W
 
PDF
Modul praktikum pbo java swing
stephan EL'wiin Shaarawy
 
PDF
Chapt 03 layouting dan desain antarmuka & input kontrol dan android widget
Edi Faizal
 
PDF
Dasar dasar netbeans
Qhindy Yanuar
 
PDF
Jeni Intro2 Bab07 Abstract Windowing Toolkit Dan Swing
Individual Consultants
 
PDF
97674720 buku-mikrokontroler-atmega8535-dengan-codevisionavr
Prayogy Pangestu
 
PDF
Remote pemantau webcam berbasis aplikasi j2me
Dwi Fahmi
 
PPTX
template PPT extend.pptx
LoisCristya
 
PDF
modul-praktikum-pemrogramanjavadgnnetbeans-171005005920.pdf
Herikusnawijaya3
 
PDF
Modul praktikum-pemrograman java dgn netbeans
SMK - Statens Museum for Kunst
 
DOCX
Membuat aplikasi sederhana menggunakan java
Eko Kurniawan Khannedy
 
DOC
Algol
kusantiharis
 
PDF
Modul PBO Bab-09 - Swing
Rakhmat Dedi Gunawan
 
PDF
270610 arm pemrograman_java_dengan_netbean_ide
Vera Lake
 
PDF
Object Oriented Programming (OOP) With Java Programming
eddie Ismantoe
 
PDF
Jeni Web Programming Bab 9 Jsf
Individual Consultants
 
PPTX
mobile programming pertemuan 7 semester 6
nugra2132
 
PPTX
nael ppt pbo.pptx
naelpurnawan
 
PPT
J S F
guestae4df1
 
Android Workshop beginner
Muhammad Iskandar Dzulqornain
 
Modul praktikum-pbo-5-swing
Agung W
 
Modul praktikum pbo java swing
stephan EL'wiin Shaarawy
 
Chapt 03 layouting dan desain antarmuka & input kontrol dan android widget
Edi Faizal
 
Dasar dasar netbeans
Qhindy Yanuar
 
Jeni Intro2 Bab07 Abstract Windowing Toolkit Dan Swing
Individual Consultants
 
97674720 buku-mikrokontroler-atmega8535-dengan-codevisionavr
Prayogy Pangestu
 
Remote pemantau webcam berbasis aplikasi j2me
Dwi Fahmi
 
template PPT extend.pptx
LoisCristya
 
modul-praktikum-pemrogramanjavadgnnetbeans-171005005920.pdf
Herikusnawijaya3
 
Modul praktikum-pemrograman java dgn netbeans
SMK - Statens Museum for Kunst
 
Membuat aplikasi sederhana menggunakan java
Eko Kurniawan Khannedy
 
Modul PBO Bab-09 - Swing
Rakhmat Dedi Gunawan
 
270610 arm pemrograman_java_dengan_netbean_ide
Vera Lake
 
Object Oriented Programming (OOP) With Java Programming
eddie Ismantoe
 
Jeni Web Programming Bab 9 Jsf
Individual Consultants
 
mobile programming pertemuan 7 semester 6
nugra2132
 
nael ppt pbo.pptx
naelpurnawan
 
Ad

More from Bayu Rimba (6)

PPTX
Slide Presentasi Dasar-dasar Flowchart
Bayu Rimba
 
PPTX
Slide Tugas Algoritma dan Pemrograman
Bayu Rimba
 
PPTX
Slide Presentasi Teknik OO pada Desain Software
Bayu Rimba
 
PPTX
Slide Dasar Materi Java Collection Framework
Bayu Rimba
 
PPTX
Slide Latihan JDBC bagian 2
Bayu Rimba
 
PPTX
Slide Latihan JDBC
Bayu Rimba
 
Slide Presentasi Dasar-dasar Flowchart
Bayu Rimba
 
Slide Tugas Algoritma dan Pemrograman
Bayu Rimba
 
Slide Presentasi Teknik OO pada Desain Software
Bayu Rimba
 
Slide Dasar Materi Java Collection Framework
Bayu Rimba
 
Slide Latihan JDBC bagian 2
Bayu Rimba
 
Slide Latihan JDBC
Bayu Rimba
 
Ad

Recently uploaded (12)

PPTX
TUGAS KONFIGURASI JARINGAN PADA KELAS 12 SMK
ulumroger
 
PPTX
TUGAS PRESENTASI KE 2 PADA KELAS 12 SMK TJKT
ulumroger
 
PPTX
presentasi penerapan struktur data pada dunia komputer
iniinformatika1
 
PPT
MODUL KOMPUTER JARINGAN ARSITEKTUR KOMPUTER.ppt
connysurbakti56
 
PPTX
PROMPT MODUL AJAR FASE F KELAS XI MEI 2025.pptx
SultonilHakim1
 
PPTX
Microsoft_Office_Kelas8_Informatika_Final.pptx
cloudmr2025
 
PPT
Jenis Lap pengawas tek JMB tgl 5.ppt
AndriMulyadi3
 
PPT
Pertemuan 5 pnegalamtan IP address dan Subnetting.ppt
ItGaming1
 
PPTX
power point tentang perangkat keras Harddisk
iniinformatika1
 
PPTX
Microsoft_Office_Kelas8_Informatika_VisualLengkap.pptx
cloudmr2025
 
PPTX
Berpikir algoritmik SMK INFORMATIKA.pptx
tehrere1
 
PDF
pengertianJaringanKomputer dan tujuan jaringan komputer.pdf
mohammadshohiha
 
TUGAS KONFIGURASI JARINGAN PADA KELAS 12 SMK
ulumroger
 
TUGAS PRESENTASI KE 2 PADA KELAS 12 SMK TJKT
ulumroger
 
presentasi penerapan struktur data pada dunia komputer
iniinformatika1
 
MODUL KOMPUTER JARINGAN ARSITEKTUR KOMPUTER.ppt
connysurbakti56
 
PROMPT MODUL AJAR FASE F KELAS XI MEI 2025.pptx
SultonilHakim1
 
Microsoft_Office_Kelas8_Informatika_Final.pptx
cloudmr2025
 
Jenis Lap pengawas tek JMB tgl 5.ppt
AndriMulyadi3
 
Pertemuan 5 pnegalamtan IP address dan Subnetting.ppt
ItGaming1
 
power point tentang perangkat keras Harddisk
iniinformatika1
 
Microsoft_Office_Kelas8_Informatika_VisualLengkap.pptx
cloudmr2025
 
Berpikir algoritmik SMK INFORMATIKA.pptx
tehrere1
 
pengertianJaringanKomputer dan tujuan jaringan komputer.pdf
mohammadshohiha
 

Presentasi latihan pemrograman Java GUI menggunakan SWING

  • 1. JAVA GUI BAYU RIMBA PRATAMA, ST, M.KOM
  • 2. INTRO Java GUI memiliki 3 package: abstract windows kit (AWT), Swing toolkit dan JavaFX. Kita akan fokus pada Swing. Komponen dari package Swing, memiliki prefix J di depannya (misal JFrame, JWindows, dll).
  • 3. WHY SWING? AWT components is heavy weighted thus the execution time of AWT is more than other. It has comparatively less functionality as compared to others. If using AWT, you have to implement a lot of things yourself. Swing is its mature and stable. Swing provides a rich set of components. With Swing, we can create complex and highly customizable interfaces using a variety of layout managers, containers, and components. JavaFX has a modern architecture and supports a wide range of UI components, animations, multimedia features, including hardware acceleration and 3D graphics. This makes it ideal for creating visually- rich and interactive applications.
  • 4. JFRAME  Every application we build extends the JFrame object, meaning our applications acquire all the characteristics of a frame  The Frame is a container object. One feature of a container object is that if its visible property is set to false, all controls will become invisible Frame Properties title Frame windows title font Font name, style, size background Frame background color foreground Color of text or graphic width Width of frame height Height of frame resizable Indicating frame is fixed sized or not visible If false, hide frame (and all its controls)
  • 6. MOVE JFRAME TO THE CENTER OF SCREEN  Buat atribut baru dengan tipe class Dimension  Hitung posisi X dan posisi Y  Gunakan method setLocation()
  • 7. LAYOUT MANAGER FlowLayout GridLayout BoxLayout BorderLayout (none)
  • 8. EXAMPLE FLOW LAYOUT  Tampilan program:  Posisi component bersifat dinamis / menyesuaikan dengan ukuran Frame  Apabila ukuran Frame diubah (resize), maka letak component akan menyesuaikan (ikut berubah)
  • 9. EXAMPLE GRID LAYOUT  Tampilan program:  Apabila ukuran Frame diubah (resize) maka letak component akan relative tetap (tidak berubah), hanya ukuran nya saja yang bertambah.  Grid Layout akan menyimpan widget/component pada cell masing-masing sesuai urutannya
  • 10. EXAMPLE BOX LAYOUT  Tampilan program:  Box Layout dapat menyusun component secara vertical atau horizontal  Dalam contoh ini, component disusun secara horizontal (X_AXIS, line code: 14)
  • 11. EXAMPLE BORDER LAYOUT  Tampilan program:  Setiap component ditempatkan sesuai dengan arah mata angin
  • 12. EXAMPLE NONE LAYOUT  Tampilan program:  Apabila layoutManager bernilai null maka setiap component perlu dipetakan ukuran dan posisi absolute-nya menggunakan method setBounds()  Karena posisi component bersifat absolute, bila Frame diperbesar maka posisi component akan tetap
  • 13. ACTIONLISTENER  Bagaimana agar program dapat berinteraksi dengan user?  gunakan interface ActionListener  Buat project baru dengan nama: SimpleCalc
  • 14. ACTIONLISTENER  Tambahkan Class baru  Beri nama class: SimpleCalculator  Beri superclass JFrame dan interface ActionListener
  • 15. ACTIONLISTENER  Terdapat error pada Class tersebut. Ikuti hints dari netbeans dan pilih Implements all abstract methods  Class tersebut akan meng-override method actionPerformed()  Copy Paste source code SimpleCalculator.java dari sini: https://pastebin.com/qUE8kdAq
  • 16. JAVA GUI DEVELOPMENT USING NETBEANS  Buat Project Baru, misal : DemoGui2  Klik kanan pada main package, pilih New > JFrame Form…
  • 17. JAVA GUI DEVELOPMENT USING NETBEANS  Beri nama class name: LoginForm  Klik tombol Finish
  • 18. JAVA GUI DEVELOPMENT USING NETBEANS  Tampilan design GUI editor
  • 19. JAVA GUI DEVELOPMENT USING NETBEANS  Klik sub tab Source (1), tambahkan setVisibile(true) pada constructor (2), delete main method (3).
  • 20. JAVA GUI DEVELOPMENT USING NETBEANS  Pada DemoGui2.java, ubah body main method menjadi seperti berikut, lalu run program.
  • 21. JAVA GUI DEVELOPMENT USING NETBEANS  Dengan menggunakan Palette, buat tampilan LoginForm seperti pada gambar di bawah ini.
  • 22. JAVA GUI DEVELOPMENT USING NETBEANS  Pada package yg sama, Buat JFrame Form dan beri nama class : MainForm
  • 23. JAVA GUI DEVELOPMENT USING NETBEANS  Pada MainForm.java, hapus main method. Lalu tambahkan atribut prevFrame dan setter method nya
  • 24. JAVA GUI DEVELOPMENT USING NETBEANS  Pada tampilan Design MainForm, tambahkan button Logout. Lalu double Click button tersebut. Anda akan diarahkan pada method yang akan dipanggil bila button tersebut di-klik.  Tambahkan line of code seperti pada gambar di kanan
  • 25. JAVA GUI DEVELOPMENT USING NETBEANS  Pada source code class LoginForm, tambahkan attribute dengan tipe class MainForm seperti pada line of code pada gambar di bawah ini.
  • 26. JAVA GUI DEVELOPMENT USING NETBEANS  Pada tampilan Design LoginForm, double click button Login. Anda akan diarahkan pada method yang akan dipanggil bila button tersebut di-klik.  Tambahkan line of code seperti pada gambar di kanan, lalu Run program
  • 27. JAVA GUI DEVELOPMENT USING NETBEANS  Ketika Anda klik Logout, username dan password yang sebelumnya sudah diinputkan masih tersimpan pada text field dan password field.  Latihan e-Learning:  Buat agar ketika user meng-klik Logout, username dan password yang sebelumnya sudah diinputkan menjadi hilang lagi!  Buat agar ketika LoginForm selalu muncul pada tengah layar!  Buat agar ketika MainForm muncul selalu dalam ukuran maximal screen! Atur minimal size nya di 600 x 600!  Hapus tombol Logout pada MainForm. Tambahkan menu bar yang terdiri dari File dan Help. File memiliki sub menu Logout dan Exit. Help memiliki sub menu About.  Sub Menu Logout untuk kembali ke LoginForm. Sub Menu Exit utk keluar. Keduanya disertai dengan konfirmasi.  Sub Menu About menampilkan creator. Munculkan Nama dan NPM Anda.  Cobalah untuk mengganti icon JFrame!