0% menganggap dokumen ini bermanfaat (0 suara)
20 tayangan16 halaman

Pertemuan 8

Diunggah oleh

geqwehaherreq
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
20 tayangan16 halaman

Pertemuan 8

Diunggah oleh

geqwehaherreq
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd

BAB VIII

BEKERJA DENGAN KONTROL JTABBEDPANE

A. CAPAIAN PEMBELAJARAN
1. Mahasiswa dapat mengerti dan dapat menggunakan
JTABPANE

2. Mahasiswa dapat menganalisa kapan menggunakan


JTABPANE

3. Mahasiswa dapat membuat program menggunakan


JTABPANE

B. MATERI

1. JTABPANE

Gambar 8. 1 Kontrol JtabbedPane

Kontrol JtabbedPane menyediakan cara mudah


untuk menampilkan beberapa panel informasi dalam
satu frame - mirip dengan memiliki aplikasi multi-frame.

Pemrograman Berorientasi Obyek 2 (Java 2) 128


Jtabbed pane adalah antarmuka yang terlihat di
banyak aplikasi GUI komersial. Kontrol panel tab
menyediakan sekelompok tab, yang masing-masing
dapat menampung komponen tunggal (hampir selalu
merupakan panel kontrol). Hanya satu tab yang bisa
aktif di sebuah waktu. Navigasi dari satu tab ke tab
berikutnya sederhana: cukup klik pada tab yang sesuai.
Menggunakan kontrol ini sangat lah mudah. Untuk
membangun setiap komponen tab sebagai panel
terpisahseperti menambahkan kontrol, setting properti,
dan menulis kode seperti yang kita lakukan sebelumnya.
Kemudian untuk menambahkan tab dengan
menyisipkan panel ke JTabbedPane.

a. Properti pada Tabbed Pane :

font : Font digunakan untuk jenis font


judul pada tab yang ditampilkan.

selectedIndex : Index tab yang sedang aktif.

tabLayoutPolicy : Mengontrol bagaimana tab


ditampilkan ketika ada banyak
tab.

b. Metode pada Tabbed Pane

setFont : Digunakan untuk mengatur


properti font.

setSelectedIndex : Digunakan untuk mengubah tab


yang ditampilkan secara
terprogram.

Pemrograman Berorientasi Obyek 2 (Java 2) 129


getSelectedIndex : Digunakan untuk
menentukan tab “aktif”.

addTab : Menambahkan
tab dan komponen terkait
untuk dikontrol.

setTabLayoutPolicy : Digunakan untuk


membuat tata letak tab

(JTabbedPane.SCROLL_
TAB_LAYOUT ,
JTabbedPane.WRAP_TA
B_LAYOUT )

c. Event pada Jtabbed Pane

StateChanged Event (ChangeEvent) dipicu


saat perubahan tab yang dipilih. Ditambah dengan
ChangeEventListener (memerlukan impor dari file
javax.swing.event.*).

2. Contoh Program menggunakan Tabbed Pane


Buat proyek baru pada NetBeans, selanjutnya
buat Frame nya. Beri nama Frame ShoppingCart. Kita
akan membangun Tabbed pane aplikasi sistem
perdagangan 'on-line' sederhana.

Kira akan membuat setiap panel tab secara


terpisah. Terlihat seperti gambar dibawah, dimana 1
Frame akan menampung satu kontrol Tabbed Pane

Pemrograman Berorientasi Obyek 2 (Java 2) 130


(shoppingPane) . Panel tab akan menampung tiga panel
(orderPanel, cartPanel dan AddressPanel). desain
setiap panel nya secara terpisah. Contoh desain nya :

Gambar 8. 2 Desain JtabbedPane

a. Setting propertiesnya :
1) OrderPane(Panel)

text : Order Form

a) orderLabel(Label) :

text : Order Address:

insets : (10, 10, 0, 0)

b) orderTextArea(TextArea) :

columns : 30

rows :6

Pemrograman Berorientasi Obyek 2 (Java 2) 131


insets : (10, 10, 10, 10)

c) orderSpinner(Spinner)

model : SpinnerListModel

isi dari list model :

Tricycle

Skateboard

In-LineSkates

Magic Set

Video Game

Helmet

Building Kit

Artist Set

Doll Baby

Bicycle

preferredSize : (150, 25)

d) addButton(Button)

text : Add to Order

insets : (5, 0, 5, 0)

e) numberTextField

setText : Items Ordered: 0

columns : 20

editable : false

Pemrograman Berorientasi Obyek 2 (Java 2) 132


background : WHITE

horizontalAlignment : CENTER

insets : (5, 0, 5, 0)

f) newButton:

text : New Order

insets : (5, 0, 5, 0)

g) exitButton:

text : Exit

insets : (5, 0, 5, 0)

2) cartPanel (Panel)

text : Shopping Cart


a) cartPane:
preferredSize (250, 150)
b) viewportView cartTextArea (JTextArea
control)
insets (10, 10, 10, 10)
c) costTextField:
text : Total Cost:
columns : 20
editable false
background : WHITE
insets (5, 0, 5, 0)

Pemrograman Berorientasi Obyek 2 (Java 2) 133


3) AddressPane (Panel)

text : Mailing Label

a) preferredSize : (250, 150)


b) viewportView : addressTextArea (JTextArea
control)
insets (10, 10, 10, 10)

b. Tampilan Jendela Navigator setelah setting


properties

Gambar 8. 3 Navigator JtabbedPane

3. Tahapan Coding
Setelah proses desain selesai kita akan meng kodekan
atau membuat program nya :

Pemrograman Berorientasi Obyek 2 (Java 2) 134


a. Deklarasi 2 variabel yang dapat dikenali ke semua
frame
Dibawah FrameJTabbedPane contoh :
public class FrameJTabPane extends
javax.swing.JFrame {
int itemsOrdered;
String S1="";
b. Berikan kode program pada tombol AddButton (Add
To Order) dimana pada saat di klik akan mengambil
nilai item dari OrderSpinner, lalu menambahkan
jumlah item order numberTextField :
private void
addButtonActionPerformed(java.awt.event.ActionEv
ent evt) {
cartTextArea.setText("");
itemsOrdered++;
S1=S1+"
"+orderSpinner.getValue().toString()+'\n';
numberTextField.setText("Items Ordered: " +
itemsOrdered);
}
c. Berikan kode program pada tombo lNewButton (New
Order), untuk membuat order baru dan
membersihkan semua komponen yang telah di isi,
Kode Programnya :
private void
newButtonActionPerformed(java.awt.event.ActionEv
ent evt) {

Pemrograman Berorientasi Obyek 2 (Java 2) 135


// TODO add your handling code here:

OrderTextArea.setText("");
itemsOrdered = 0;
numberTextField.setText("Items Ordered: 0");
cartTextArea.setText(null);
cartTextField.setText("");
AddressTextArea.setText("");
S1="";
}
d. Berikan Kode Program untuk Tombol Exit hasilnya
akan menampilkan dialog konformasi, jika tekan OK
akan keluar dari program, jika tekan Cancel frame
akan tetap running tampilan yang di inginkan seperti
gambar dibawah ini :

Gambar 8. 4 Tampilan pesan TabbedPane

Kode program :
private void
exitButtonActionPerformed(java.awt.event.ActionEve
nt evt) {
// TODO add your handling code here:

Pemrograman Berorientasi Obyek 2 (Java 2) 136


int ex=JOptionPane.showConfirmDialog(null,
"Are You Sure ? ",
"Konfirmasi",JOptionPane.OK_CANCEL_OPTION,J
OptionPane.QUESTION_MESSAGE);
if (ex==0) {
System.exit(0);
}

e. Berikan Kode Program saat berpindah Tab dari Tab


OrderPanel, CartPanel, Mailing Label
private void
shoppingPaneStateChanged(javax.swing.event.Cha
ngeEvent evt) {
// TODO add your handling code here:

switch(shoppingPane.getSelectedIndex()){
case 0:
break;
case 1:
if (itemsOrdered == 0)
{JOptionPane.showConfirmDialog(null, "No
items have been ordered.", "Error",
JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE);
shoppingPane.setSelectedIndex(0);
}
else
{

Pemrograman Berorientasi Obyek 2 (Java 2) 137


cartTextArea.setText(S1);

cartTextField.setText(""+numberTextField.getText());
}
break;
case 2:
// establish address and show label form
if (OrderTextArea.getText().equals(""))
{
JOptionPane.showConfirmDialog(null,
"Address is blank.", "Error",
JOptionPane.DEFAULT_OPTION,
JOptionPane.ERROR_MESSAGE);
shoppingPane.setSelectedIndex(0);
}
else
{
//form label
AddressTextArea.setText("My Company\n"
+ "My Address\n" + "My City, State, Zip\n\n\n" +
OrderTextArea.getText()); }
break;

}
}

f. Uji coba program jalankan/Run program (Shift+F6)


kemudian posisi tab aktif pada Order Form

Pemrograman Berorientasi Obyek 2 (Java 2) 138


Gambar 8. 5 Hasil Run Order Form TabbedPane

a. Isikan text order area :


- Agustav, Jl merpati , Tangerang Selatan
b. Aktifkan spinner untuk memilih item order contoh
;
- Skateboard , Magic Set . Helmet
- Setiap order lakukan klik tombol order
c. Aktifkan Tab Shopping Cart lihat perhatikan
cart Text area apakah ter isi sesuai pada
addOrder yang dilakukan jika tampilan seperti
dibawah ini maka order benar :

Pemrograman Berorientasi Obyek 2 (Java 2) 139


Gambar 8. 6 TabbedPane Shopping Cart

d. Aktifkan Tab Mailing Label, jika Adress text area


sama dengan order address pada tab Order form
maka mailing label benar :

Gambar 8. 7 Tabbed Pane Mailing Label

Pemrograman Berorientasi Obyek 2 (Java 2) 140


C. LATIHAN
1. Modifikasi Frame Shopping cart diatas, tambahkan cost
masing masing item order, dan akan ditampilkan pada
costtextfield Tab Order Form.
Acuan nya :
Tabel 8. 1 Tabel Order Form

Item Order Cost ($)


50
Tricycle
60
Skateboard
100
In-LineSkates
15
Magic Set
25
Video Game
40
Helmet
120
Building Kit
18
Artist Set
19
Doll Baby
20
Bicycle

Tampilan modifikasi setelah penambahan cost pada Tab


Order Form

Pemrograman Berorientasi Obyek 2 (Java 2) 141


Gambar 8. 8 Tampilan Modifikasi Order Form

2. Tambahkan total cost textfield pada tab carPanel, total


cost adalajh jumlah cost yang di order
Tampilan Modifikasi setelah penambahan Total cost
pada Tab Shopping cart

Gambar 8. 9 Hasil Run Modifikasi TabbedPane

Pemrograman Berorientasi Obyek 2 (Java 2) 142


D. REFERENSI
Philip Conrod & Lou Tylee. Learn Java™ GUI Applications A
JFC Swing NetBeans Tutorial 8th Edition , Kidware
Software, LLC, 2015
Danny Poo Derek Kiong Swarnalatha Ashok, Object-
Oriented Second edition Programming and Java ,
Springer 2008
https://www.javatpoint.com/java-bufferedreader-class,
diakses pada tanggal 23 Desember 2021.
https://www.homeandlearn.co.uk/java/java_check_boxes.ht
ml, diakses pada diakses pada tanggal 23 Juni
2022.
Romi satrio Wahono, Java Gui, 2016

Pemrograman Berorientasi Obyek 2 (Java 2) 143

Anda mungkin juga menyukai