You are on page 1of 10

Nama : RIZQY ALFAJRI

NIM/Kelas : 210605110041/ KELAS B


Aslab : KRISNA MAULANA
Laporan Praktikum Laporan Pratikum Modul 9
:
Modul

Percobaan dilakukan!

1. GUI Dengan FlowLayout


import javax.swing.*;
import java.awt.*;
public class cobaGui extends JFrame{
Button cb1=new Button ("Pilih A");
Button cb2=new Button ("Pilih B");
cobaGui(){
setTitle("Program GUI Pertamaku");
setLocation(200,100);
setSize(200,200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
void objek(){
getContentPane().setLayout(new FlowLayout());
getContentPane().setBackground(Color.GREEN);
cb1.setBackground(Color.MAGENTA);
getContentPane().add(cb1);
getContentPane().add(cb2);
setVisible(true);
}
public static void main(String[] args) {
cobaGui ZZ=new cobaGui();
ZZ.objek();
}
}
 GUI Dengan NULL Layout (Tanpa Layout)
import javax.swing.*;
import java.awt.*;
public class cobaGui_null extends JFrame{
Checkbox cb1=new Checkbox("Pilih A");
Checkbox cb2=new Checkbox("Pilih B");
Checkbox cb3=new Checkbox("Pilih C");
cobaGui_null(){
setTitle("Program GUI Pertamaku");
setLocation(200,100);
setSize(400,350);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
void objek(){
getContentPane().setLayout(null);
getContentPane().setBackground(Color.GREEN);
getContentPane().add(cb1);
getContentPane().add(cb2);
getContentPane().add(cb3);
cb1.setBounds(30,90,150,20);
cb2.setBounds(30,120,150,20);
cb3.setBounds(30,150,150,20);
setVisible(true);
}
public static void main(String[] args) {
cobaGui_null ZZ=new cobaGui_null();
ZZ.objek();
}
}
2. Dengan menggunakan null layout Buat program yang bisa menampilkan
output sebagai berikut!
import javax.swing.*;
import java.awt.*;
public class no2_9 extends JFrame{
TextField txt1 = new TextField(" ");
Button bt1 = new Button("1");
Button bt2 = new Button("2");
Button bt3 = new Button("3");
Button bt4 = new Button("4");
Button bt5 = new Button("5");
Button bt6 = new Button("6");
Button bt7 = new Button("7");
Button bt8 = new Button("8");
Button bt9 = new Button("9");
Button bt0 = new Button("0");
Button btc = new Button("c");
Button btm = new Button("=");
Button plus = new Button("+");
Button min = new Button("-");
Button kali = new Button("x");
Button bagi = new Button("/");

no2_9(){
setTitle("Program GUI Pertamaku");
setLocation(200,100);
setSize(400,350);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

void objek(){
getContentPane().setLayout(null);
getContentPane().add(bt1);
getContentPane().add(bt2);
getContentPane().add(bt3);
getContentPane().add(bt4);
getContentPane().add(bt5);
getContentPane().add(bt6);
getContentPane().add(bt7);
getContentPane().add(bt8);
getContentPane().add(bt9);
getContentPane().add(bt0);
getContentPane().add(btc);
getContentPane().add(btm);
getContentPane().add(plus);
getContentPane().add(min);
getContentPane().add(kali);
getContentPane().add(bagi);
getContentPane().add(txt1);

txt1.setBounds(20,30,360,40);
bt1.setBounds(20,90,70,40);
bt2.setBounds(120,90,70,40);
bt3.setBounds(220,90,70,40);
bt4.setBounds(20,140,70,40);
bt5.setBounds(120,140,70,40);
bt6.setBounds(220,140,70,40);
bt7.setBounds(20,190,70,40);
bt8.setBounds(120,190,70,40);
bt9.setBounds(220,190,70,40);
bt0.setBounds(20,240,70,40);
btc.setBounds(120,240,70,40);
btm.setBounds(220,240,70,40);
plus.setBounds(320,90,60,40);
min.setBounds(320,140,60,40);
kali.setBounds(320,190,60,40);
bagi.setBounds(320,240,60,40);
setVisible(true);
}
public static void main(String[] args) {
no2_9 zz = new no2_9();
zz.objek();
}
}
3. Tambahkan warna pada komponen tombol yang telah anda buat tersebut!
import javax.swing.*;
import java.awt.*;
public class no3_9 extends JFrame{
TextField txt1 = new TextField(" ");
Button bt1 = new Button("1");
Button bt2 = new Button("2");
Button bt3 = new Button("3");
Button bt4 = new Button("4");
Button bt5 = new Button("5");
Button bt6 = new Button("6");
Button bt7 = new Button("7");
Button bt8 = new Button("8");
Button bt9 = new Button("9");
Button bt0 = new Button("0");
Button btc = new Button("c");
Button btm = new Button("=");
Button plus = new Button("+");
Button min = new Button("-");
Button kali = new Button("x");
Button bagi = new Button("/");

no3_9(){
setTitle("Program GUI Pertamaku");
setLocation(200,100);
setSize(400,350);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

void objek(){
getContentPane().setLayout(null);
getContentPane().add(bt1);
getContentPane().add(bt2);
getContentPane().add(bt3);
getContentPane().add(bt4);
getContentPane().add(bt5);
getContentPane().add(bt6);
getContentPane().add(bt7);
getContentPane().add(bt8);
getContentPane().add(bt9);
getContentPane().add(bt0);
getContentPane().add(btc);
getContentPane().add(btm);
getContentPane().add(plus);
getContentPane().add(min);
getContentPane().add(kali);
getContentPane().add(bagi);
getContentPane().add(txt1);

txt1.setBounds(20,30,360,40);
bt1.setBounds(20,90,70,40);
bt2.setBounds(120,90,70,40);
bt3.setBounds(220,90,70,40);
bt4.setBounds(20,140,70,40);
bt5.setBounds(120,140,70,40);
bt6.setBounds(220,140,70,40);
bt7.setBounds(20,190,70,40);
bt8.setBounds(120,190,70,40);
bt9.setBounds(220,190,70,40);
bt0.setBounds(20,240,70,40);
btc.setBounds(120,240,70,40);
btm.setBounds(220,240,70,40);
plus.setBounds(320,90,60,40);
min.setBounds(320,140,60,40);
kali.setBounds(320,190,60,40);
bagi.setBounds(320,240,60,40);

bt1.setBackground(Color.PINK);
bt2.setBackground(Color.PINK);
bt3.setBackground(Color.PINK);
bt4.setBackground(Color.ORANGE);
bt5.setBackground(Color.ORANGE);
bt6.setBackground(Color.ORANGE);
bt7.setBackground(Color.YELLOW);
bt8.setBackground(Color.YELLOW);
bt9.setBackground(Color.YELLOW);
bt0.setBackground(Color.GREEN);
btc.setBackground(Color.GREEN);
btm.setBackground(Color.GREEN);
plus.setBackground(Color.PINK);
min.setBackground(Color.ORANGE);
kali.setBackground(Color.YELLOW);
bagi.setBackground(Color.GREEN);
setVisible(true);
}
public static void main(String[] args) {
no3_9 zz = new no3_9();
zz.objek();
}
}

Pendahuluan !
1. Jelaskan apa yang dimaksud delegation event model? Dan sebutkan
macamnya, serta jelaskan!

a. Event Source mengacu pada komponen GUI yang meng-generate event.


b. Event Listener/Handler menerima berita dari event-event dan proses-
proses interaksi user.
c. Event Object event yang diciptakan Ketika sebuah event terjadi (misal,
ketika user berinteraksi dengan komponen GUI).

2. Apa yang anda ketahui tentang event listener? Ada berapa macam?
jelaskan, serta sebutkan method methodnya!

a. ActionListener bereaksi atas perubahan mouse atau keyboard, Method:


public void actionPerformed(ActionEvent e)
b. MouseListener bereaksi atas pergerakan mouse, Method: -public void
mouseClicked(MouseEvent e), public void mouseEntered(MouseEvent e),
public void mouseExited(MouseEvent e), public void
mousePressed(MouseEvent e), public void mouseReleased(MouseEvent e)
c. MouseMotionListener adalah Interface Mouse Motion Listener mendukung
MouseListener. Menyediakan method-method yang akan memantau
pergerakan mouse, seperti drag dan pemindahn mouse. Method: public
void mouseDragged(MouseEvent e), public void mouseMoved(MouseEvent
e)
3. Berikut ini langkah-langkah yang Anda butuhkan untuk membuat aplikasi
GUI dengan event handling.

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class soalno3_10 extends JFrame{

Label txt1 = new Label("Masukkan Angka pertama");


Label txt2 = new Label("Masukkan Angka kedua");
Label txt3 = new Label("Hasil");
JTextField tf1 = new JTextField();
JTextField tf2 = new JTextField();
JTextField tf3 = new JTextField();
Button plus = new Button("+");
Button min = new Button("-");
Button bagi = new Button("/");
Button kali = new Button("*");
soalno3_10() {
setTitle("Program Pendahuluan 3");
setLocation(200, 100);
setSize(340, 400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
void objek() {
getContentPane().setLayout(null);
add(txt1);
add(txt2);
add(txt3);
add(tf1);
add(tf2);
add(tf3);
add(plus);
add(min);
add(bagi);
add(kali);
txt1.setBounds(87, 20, 180, 50);
tf1.setBounds(100, 60, 120, 30);
txt2.setBounds(87, 90, 180, 50);
tf2.setBounds(100, 130, 120, 30);
txt3.setBounds(87, 160, 180, 50);
tf3.setBounds(100, 200, 120, 30);
plus.setBounds(60, 245, 55, 30);
min.setBounds(130, 245, 55, 30);
kali.setBounds(200, 245, 55, 30);
bagi.setBounds(130, 290, 55, 30);
setVisible(true);
}
void reaksi() {
plus.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
int angka1 = Integer.parseInt(tf1.getText());
int angka2 = Integer.parseInt(tf2.getText());
int hasil = angka1 + angka2;
tf3.setText(Integer.toString(hasil));
}
});
min.addMouseListener(new MouseAdapter(){
public void mouseClicked(MouseEvent e) {
int angka1 = Integer.parseInt(tf1.getText());
int angka2 = Integer.parseInt(tf2.getText());
int hasil = angka1 - angka2;
tf3.setText(Integer.toString(hasil));
}
});
kali.addMouseListener(new MouseAdapter(){
public void mouseClicked(MouseEvent e) {
int angka1 = Integer.parseInt(tf1.getText());
int angka2 = Integer.parseInt(tf2.getText());
int hasil = angka1 * angka2;
tf3.setText(Integer.toString(hasil));
}
});
bagi.addMouseListener(new MouseAdapter(){
public void mouseClicked(MouseEvent e) {
int angka1 = Integer.parseInt(tf1.getText());
int angka2 = Integer.parseInt(tf2.getText());
int hasil = angka1 / angka2;
tf3.setText(Integer.toString(hasil));
}
});
}
public static void main(String[] args) {
soalno3_10 zz = new soalno3_10();
zz.objek();
zz.reaksi();
}
}

Format Laporan:
1. Laporan sesuai format yang diberikan!
2. Kertas A4 Margin Narrow!
3. Penjelasan dan sourcecode ditulis tangan dengan bolpoin biru, sedangkan Screenshoot
Hasil dicetak (print) tempelkan di bawahnya!
4. Laporan dikumpulkan (format .pdf) maximal H-1 perkuliahan selanjutnya pada aslab masing-
masing!

You might also like