0% found this document useful (0 votes)
89 views120 pages

Tugas GUI

The document is a group assignment report for an object-oriented programming course submitted by three students - Alif Al Husaini, Rio Irawan, and Angga Prasetyo. It details the creation of a GUI program in Java called "HelloGui" and was submitted on November 16, 2023 to the Informatics Department at Padjadjaran University.

Uploaded by

alif al husaini
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
89 views120 pages

Tugas GUI

The document is a group assignment report for an object-oriented programming course submitted by three students - Alif Al Husaini, Rio Irawan, and Angga Prasetyo. It details the creation of a GUI program in Java called "HelloGui" and was submitted on November 16, 2023 to the Informatics Department at Padjadjaran University.

Uploaded by

alif al husaini
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

TUGAS KELOMPOK

PEMROGRAMAN BERORIENTASI OBJEK

Disusun Oleh:

Alif Al Husaini – 140810220036

Rio Irawan - 140810220084

Angga Prasetyo – 140810220086

Dikumpulkan Tanggal:

16 November 2023

PROGRAM STUDI S-1 TEKNIK INFORMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS PADJADJARAN

JATINANGOR

2023
HelloGUI
Source Code :
/*
* Click
nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-defa
[Link] to change this license
* Click
nbfs://nbhost/SystemFileSystem/Templates/GUIForms/[Link]
to edit this template
*/
package HelloGuiku;

/**
*
* @author
* /*
* Anggota 1 : Alif Al Husaini
* NPM : 140810220036
* Anggota 2 : Rio Irawan
* NPM : 140810220084
* Anggota 3 : Angga Prasetyo
* NPM : 140810220086
* Kelas : B
* Tanggal : 19 November 2023
* Deskripsi : Program GUI dengan Java
*/
public class HelloGui extends [Link] {

/**
* Creates new form HelloGui
*/
public HelloGui() {
initComponents();
}

/**
* This method is called from within the constructor to
initialize the form.
* WARNING: Do NOT modify this code. The content of this
method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated
Code">
private void initComponents() {

jPanel1 = new [Link]();


judulLabel = new [Link]();
jPanel2 = new [Link]();
namaLabel = new [Link]();
npmLabel = new [Link]();
alamatLabel = new [Link]();
namaField = new [Link]();
npmField = new [Link]();
alamatField = new [Link]();
tekanButton = new [Link]();
bersihkanButton = new [Link]();
jPanel3 = new [Link]();
hasilLabel = new [Link]();
hasilLabel1 = new [Link]();
selesaiButton = new [Link]();

setDefaultCloseOperation([Link].EXIT_ON_C
LOSE);

[Link](new
[Link]([Link]
[Link]));

[Link](new [Link]("Segoe UI", 1,


24)); // NOI18N

[Link]([Link].C
ENTER);
[Link](jPanel1);
[Link]("Hello GUI NetBeans");

[Link] jPanel1Layout = new


[Link](jPanel1);
[Link](jPanel1Layout);
[Link](

[Link]([Link]
[Link])
.addGroup([Link],
[Link]()
.addContainerGap()
.addComponent(judulLabel,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap())
);
[Link](

[Link]([Link]
[Link])

.addGroup([Link],
[Link]()

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE)
.addComponent(judulLabel)
.addContainerGap())
);

[Link]([Link]
("Input"));

[Link]("Nama :");

[Link]("NPM :");

[Link]("Alamat :");

[Link]("Input Nama");

[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
npmFieldActionPerformed(evt);
}
});

[Link]("Tekan Saya");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
tekanButtonActionPerformed(evt);
}
});

[Link]("Bersihkan");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
bersihkanButtonActionPerformed(evt);
}
});

[Link] jPanel2Layout = new


[Link](jPanel2);
[Link](jPanel2Layout);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addContainerGap()

.addGroup([Link]([Link]
[Link], false)

.addGroup([Link]()
.addComponent(alamatLabel,
[Link].PREFERRED_SIZE, 73,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED)
.addComponent(alamatField))

.addGroup([Link],
[Link]()
.addComponent(npmLabel,
[Link].PREFERRED_SIZE, 73,
[Link].PREFERRED_SIZE)
.addPreferredGap([Link]
LATED)
.addComponent(npmField))

.addGroup([Link]()
.addComponent(namaLabel,
[Link].PREFERRED_SIZE, 73,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED)
.addComponent(namaField,
[Link].PREFERRED_SIZE, 217,
[Link].PREFERRED_SIZE)))

.addPreferredGap([Link]
LATED, [Link].DEFAULT_SIZE, Short.MAX_VALUE)

.addGroup([Link]([Link]
[Link])
.addComponent(tekanButton,
[Link],
[Link].PREFERRED_SIZE, 95,
[Link].PREFERRED_SIZE)
.addComponent(bersihkanButton,
[Link],
[Link].PREFERRED_SIZE, 95,
[Link].PREFERRED_SIZE))
.addContainerGap())
);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addContainerGap()

.addGroup([Link]([Link]
[Link])
.addComponent(namaLabel)

.addGroup([Link]([Link]
[Link])
.addComponent(namaField,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addComponent(tekanButton)))
.addGap(18, 18, 18)

.addGroup([Link]([Link]
[Link])
.addComponent(npmLabel)
.addComponent(npmField,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addComponent(bersihkanButton))
.addGap(18, 18, 18)

.addGroup([Link]([Link]
[Link])
.addComponent(alamatLabel)
.addComponent(alamatField,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE))
.addContainerGap(30, Short.MAX_VALUE))
);

[Link]([Link]
([Link](""), "Hasil"));

[Link] jPanel3Layout = new


[Link](jPanel3);
[Link](jPanel3Layout);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addContainerGap()

.addGroup([Link]([Link]
[Link])
.addComponent(hasilLabel,
[Link].PREFERRED_SIZE, 387,
[Link].PREFERRED_SIZE)
.addComponent(hasilLabel1,
[Link].PREFERRED_SIZE, 387,
[Link].PREFERRED_SIZE))

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))
);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addContainerGap()
.addComponent(hasilLabel,
[Link].PREFERRED_SIZE, 23,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED)
.addComponent(hasilLabel1,
[Link].PREFERRED_SIZE, 23,
[Link].PREFERRED_SIZE)
.addContainerGap(28, Short.MAX_VALUE))
);

[Link]("Selesai");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
selesaiButtonActionPerformed(evt);
}
});

[Link] layout = new


[Link](getContentPane());
getContentPane().setLayout(layout);
[Link](

[Link]([Link].L
EADING)
.addGroup([Link]()
.addContainerGap()

.addGroup([Link]([Link].A
[Link])
.addGroup([Link]()
.addGap(6, 6, 6)
.addComponent(jPanel3,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE))
.addComponent(jPanel1,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel2,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)

.addGroup([Link],
[Link]()
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(selesaiButton,
[Link].PREFERRED_SIZE, 95,
[Link].PREFERRED_SIZE)))
.addContainerGap())
);
[Link](

[Link]([Link].L
EADING)
.addGroup([Link]()
.addComponent(jPanel1,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addGap(29, 29, 29)
.addComponent(jPanel2,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED)
.addComponent(jPanel3,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
RELATED)
.addComponent(selesaiButton)
.addContainerGap(37, Short.MAX_VALUE))
);

pack();
}// </editor-fold>

private void
npmFieldActionPerformed([Link] evt) {
// TODO add your handling code here:
}

private void
tekanButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
[Link]("Hi, perkenalkan nama saya " +
[Link]()
+ ", NPM saya " + [Link]());
[Link]("Saya tinggal di " +
[Link]());
}

private void
bersihkanButtonActionPerformed([Link] evt)
{
// TODO add your handling code here:
[Link]("");
[Link]("");
[Link]("");
[Link]("");
[Link]("");
[Link]();
}

private void
selesaiButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
[Link](0);
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look
and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not
available, stay with the default look and feel.
* For details see
[Link]
/[Link]
*/
try {
for ([Link] info :
[Link]()) {
if ("Nimbus".equals([Link]())) {

[Link]([Link]());
break;
}
}
} catch (ClassNotFoundException ex) {

[Link]([Link]()).l
og([Link], null, ex);
} catch (InstantiationException ex) {

[Link]([Link]()).l
og([Link], null, ex);
} catch (IllegalAccessException ex) {

[Link]([Link]()).l
og([Link], null, ex);
} catch ([Link]
ex) {

[Link]([Link]()).l
og([Link], null, ex);
}
//</editor-fold>

/* Create and display the form */


[Link](new Runnable() {
public void run() {
new HelloGui().setVisible(true);
}
});
}

// Variables declaration - do not modify


private [Link] alamatField;
private [Link] alamatLabel;
private [Link] bersihkanButton;
private [Link] hasilLabel;
private [Link] hasilLabel1;
private [Link] jPanel1;
private [Link] jPanel2;
private [Link] jPanel3;
private [Link] judulLabel;
private [Link] namaField;
private [Link] namaLabel;
private [Link] npmField;
private [Link] npmLabel;
private [Link] selesaiButton;
private [Link] tekanButton;
// End of variables declaration
}

Tampilan :
Output :
Membentuk NPM Mahasiswa
Source Code :
/*
* Click
nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-defa
[Link] to change this license
* Click
nbfs://nbhost/SystemFileSystem/Templates/GUIForms/[Link]
to edit this template
*/
package BentukNPM;

/**
*
* @author
* /*
* Anggota 1 : Alif Al Husaini
* NPM : 140810220036
* Anggota 2 : Rio Irawan
* NPM : 140810220084
* Anggota 3 : Angga Prasetyo
* NPM : 140810220086
* Kelas : B
* Tanggal : 19 November 2023
* Deskripsi : Program GUI dengan Java
*/
public class NPM extends [Link] {

/**
* Creates new form NPM
*/
public NPM() {
initComponents();
}

/**
* This method is called from within the constructor to
initialize the form.
* WARNING: Do NOT modify this code. The content of this
method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated
Code">
private void initComponents() {

buttonGroup1 = new [Link]();


jLabel1 = new [Link]();
jPanel1 = new [Link]();
prodiLabel = new [Link]();
angkatanLabel = new [Link]();
noLabel = new [Link]();
prodiComboBox = new [Link]<>();
noUrutField = new [Link]();
prosesButton = new [Link]();
Ang09RadioButton = new [Link]();
Ang10RadioButton = new [Link]();
Ang11RadioButton = new [Link]();
jPanel2 = new [Link]();
selesaiButton = new [Link]();
hslLabel = new [Link]();
hasilLabel = new [Link]();

setDefaultCloseOperation([Link].EXIT_ON_C
LOSE);
setTitle("Pembentukan NPM");

[Link](new [Link]("Baskerville Old


Face", 0, 36)); // NOI18N
[Link]("Proses Pembentukan NPM");

[Link]([Link]
("Input Data . ."));

[Link]("Prodi :");

[Link]("Angkatan :");

[Link]("No Urut :");

[Link](new
[Link]<>(new String[] { "<List
Prodi>", "Teknik Informatika", "Teknik Elektro",
"Matemamatika" }));
[Link]("");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
prodiComboBoxActionPerformed(evt);
}
});

[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
noUrutFieldActionPerformed(evt);
}
});

[Link]("Proses");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
prosesButtonActionPerformed(evt);
}
});

[Link]("2019");

[Link]("2020");

[Link]("2021");

[Link] jPanel1Layout = new


[Link](jPanel1);
[Link](jPanel1Layout);
[Link](

[Link]([Link]
[Link])

.addGroup([Link],
[Link]()
.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE)
.addComponent(prosesButton)
.addContainerGap())

.addGroup([Link],
[Link]()
.addGap(14, 14, 14)

.addGroup([Link]([Link]
[Link])
.addComponent(prodiLabel)
.addComponent(noLabel)
.addComponent(angkatanLabel))

.addPreferredGap([Link]
LATED, 30, Short.MAX_VALUE)

.addGroup([Link]([Link]
[Link])
.addComponent(Ang10RadioButton)
.addComponent(prodiComboBox,
[Link].PREFERRED_SIZE, 160,
[Link].PREFERRED_SIZE)
.addComponent(Ang09RadioButton)
.addComponent(noUrutField,
[Link].PREFERRED_SIZE, 100,
[Link].PREFERRED_SIZE)
.addComponent(Ang11RadioButton))
.addGap(62, 62, 62))
);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()

.addGroup([Link]([Link]
[Link])

.addGroup([Link]()
.addGap(16, 16, 16)
.addGroup([Link]([Link]
[Link])
.addComponent(prodiLabel)
.addComponent(prodiComboBox,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE))
.addGap(24, 24, 24)

.addGroup([Link]([Link]
[Link])
.addComponent(angkatanLabel)
.addComponent(Ang09RadioButton))

.addPreferredGap([Link]
LATED)
.addComponent(Ang10RadioButton)

.addPreferredGap([Link]
LATED)
.addComponent(Ang11RadioButton)

.addPreferredGap([Link]
LATED, 31, Short.MAX_VALUE)
.addComponent(noLabel))

.addGroup([Link]()

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE)
.addComponent(noUrutField,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)))
.addGap(31, 31, 31)
.addComponent(prosesButton)
.addContainerGap())
);

[Link]().setAccessibleName("");
[Link]([Link]
("Hasil . ."));

[Link]("Selesai");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
selesaiButtonActionPerformed(evt);
}
});

[Link]("Hasil NPM adalah :");

[Link] jPanel2Layout = new


[Link](jPanel2);
[Link](jPanel2Layout);
[Link](

[Link]([Link]
[Link])

.addGroup([Link],
[Link]()

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE)
.addComponent(selesaiButton)
.addContainerGap())
.addGroup([Link]()
.addGap(14, 14, 14)
.addComponent(hslLabel)

.addPreferredGap([Link]
LATED)
.addComponent(hasilLabel,
[Link].PREFERRED_SIZE, 86,
[Link].PREFERRED_SIZE)
.addContainerGap(69, Short.MAX_VALUE))
);
[Link](
[Link]([Link]
[Link])

.addGroup([Link],
[Link]()
.addGap(17, 17, 17)

.addGroup([Link]([Link]
[Link], false)
.addComponent(hslLabel,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(hasilLabel,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE))

.addPreferredGap([Link]
LATED, [Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(selesaiButton)
.addContainerGap())
);

[Link] layout = new


[Link](getContentPane());
getContentPane().setLayout(layout);
[Link](

[Link]([Link].L
EADING)
.addGroup([Link]()

.addGroup([Link]([Link].A
[Link])
.addGroup([Link]()
.addContainerGap()
.addComponent(jPanel1,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
RELATED)
.addComponent(jPanel2,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE))
.addGroup([Link]()
.addGap(126, 126, 126)
.addComponent(jLabel1)))

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))
);
[Link](

[Link]([Link].L
EADING)
.addGroup([Link]()
.addContainerGap()
.addComponent(jLabel1)

.addPreferredGap([Link]
LATED)

.addGroup([Link]([Link].A
[Link])
.addComponent(jPanel1,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel2,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap())
);

pack();
}// </editor-fold>

private void
prodiComboBoxActionPerformed([Link] evt) {
// TODO add your handling code here:
}

private void
noUrutFieldActionPerformed([Link] evt) {
// TODO add your handling code here:
}

private void
prosesButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
String prodi = null; // ””
String angkatan= null;
if([Link]()=="Matematika"){
prodi="103";
}
else if([Link]() == "Teknik
Informatika"){
prodi="203";
}
else if([Link]() == "Teknik
Elektro"){
prodi="303";
}
if([Link]()){
angkatan="09";
}
else if([Link]()){
angkatan="10";
}
else if([Link]()){
angkatan="11";
}

[Link]("140"+prodi+angkatan+[Link]())
;
}

private void
selesaiButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
[Link](0);
}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look
and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not
available, stay with the default look and feel.
* For details see
[Link]
/[Link]
*/
try {
for ([Link] info :
[Link]()) {
if ("Nimbus".equals([Link]())) {

[Link]([Link]());
break;
}
}
} catch (ClassNotFoundException ex) {

[Link]([Link]()).log(ja
[Link], null, ex);
} catch (InstantiationException ex) {

[Link]([Link]()).log(ja
[Link], null, ex);
} catch (IllegalAccessException ex) {

[Link]([Link]()).log(ja
[Link], null, ex);
} catch ([Link]
ex) {

[Link]([Link]()).log(ja
[Link], null, ex);
}
//</editor-fold>

/* Create and display the form */


[Link](new Runnable() {
public void run() {
new NPM().setVisible(true);
}
});
}
// Variables declaration - do not modify
private [Link] Ang09RadioButton;
private [Link] Ang10RadioButton;
private [Link] Ang11RadioButton;
private [Link] angkatanLabel;
private [Link] buttonGroup1;
private [Link] hasilLabel;
private [Link] hslLabel;
private [Link] jLabel1;
private [Link] jPanel1;
private [Link] jPanel2;
private [Link] noLabel;
private [Link] noUrutField;
private [Link]<String> prodiComboBox;
private [Link] prodiLabel;
private [Link] prosesButton;
private [Link] selesaiButton;
// End of variables declaration
}

Tampilan :
Output :
Operasi Pengulangan
Source Code :
/*
* Click
nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-defa
[Link] to change this license
* Click
nbfs://nbhost/SystemFileSystem/Templates/GUIForms/[Link]
to edit this template
*/
package BentukNPM;

/**
*
* @author
* /*
* Anggota 1 : Alif Al Husaini
* NPM : 140810220036
* Anggota 2 : Rio Irawan
* NPM : 140810220084
* Anggota 3 : Angga Prasetyo
* NPM : 140810220086
* Kelas : B
* Tanggal : 19 November 2023
* Deskripsi : Program GUI dengan Java
*/
public class NPM extends [Link] {

/**
* Creates new form NPM
*/
public NPM() {
initComponents();
}

/**
* This method is called from within the constructor to
initialize the form.
* WARNING: Do NOT modify this code. The content of this
method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated
Code">
private void initComponents() {

buttonGroup1 = new [Link]();


jLabel1 = new [Link]();
jPanel1 = new [Link]();
prodiLabel = new [Link]();
angkatanLabel = new [Link]();
noLabel = new [Link]();
prodiComboBox = new [Link]<>();
noUrutField = new [Link]();
prosesButton = new [Link]();
Ang09RadioButton = new [Link]();
Ang10RadioButton = new [Link]();
Ang11RadioButton = new [Link]();
jPanel2 = new [Link]();
selesaiButton = new [Link]();
hslLabel = new [Link]();
hasilLabel = new [Link]();

setDefaultCloseOperation([Link].EXIT_ON_C
LOSE);
setTitle("Pembentukan NPM");

[Link](new [Link]("Baskerville Old


Face", 0, 36)); // NOI18N
[Link]("Proses Pembentukan NPM");

[Link]([Link]
("Input Data . ."));

[Link]("Prodi :");

[Link]("Angkatan :");

[Link]("No Urut :");

[Link](new
[Link]<>(new String[] { "<List
Prodi>", "Teknik Informatika", "Teknik Elektro",
"Matemamatika" }));
[Link]("");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
prodiComboBoxActionPerformed(evt);
}
});

[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
noUrutFieldActionPerformed(evt);
}
});

[Link]("Proses");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
prosesButtonActionPerformed(evt);
}
});

[Link]("2019");

[Link]("2020");

[Link]("2021");

[Link] jPanel1Layout = new


[Link](jPanel1);
[Link](jPanel1Layout);
[Link](

[Link]([Link]
[Link])

.addGroup([Link],
[Link]()
.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE)
.addComponent(prosesButton)
.addContainerGap())

.addGroup([Link],
[Link]()
.addGap(14, 14, 14)

.addGroup([Link]([Link]
[Link])
.addComponent(prodiLabel)
.addComponent(noLabel)
.addComponent(angkatanLabel))

.addPreferredGap([Link]
LATED, 30, Short.MAX_VALUE)

.addGroup([Link]([Link]
[Link])
.addComponent(Ang10RadioButton)
.addComponent(prodiComboBox,
[Link].PREFERRED_SIZE, 160,
[Link].PREFERRED_SIZE)
.addComponent(Ang09RadioButton)
.addComponent(noUrutField,
[Link].PREFERRED_SIZE, 100,
[Link].PREFERRED_SIZE)
.addComponent(Ang11RadioButton))
.addGap(62, 62, 62))
);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()

.addGroup([Link]([Link]
[Link])

.addGroup([Link]()
.addGap(16, 16, 16)
.addGroup([Link]([Link]
[Link])
.addComponent(prodiLabel)
.addComponent(prodiComboBox,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE))
.addGap(24, 24, 24)

.addGroup([Link]([Link]
[Link])
.addComponent(angkatanLabel)
.addComponent(Ang09RadioButton))

.addPreferredGap([Link]
LATED)
.addComponent(Ang10RadioButton)

.addPreferredGap([Link]
LATED)
.addComponent(Ang11RadioButton)

.addPreferredGap([Link]
LATED, 31, Short.MAX_VALUE)
.addComponent(noLabel))

.addGroup([Link]()

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE)
.addComponent(noUrutField,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)))
.addGap(31, 31, 31)
.addComponent(prosesButton)
.addContainerGap())
);

[Link]().setAccessibleName("");
[Link]([Link]
("Hasil . ."));

[Link]("Selesai");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
selesaiButtonActionPerformed(evt);
}
});

[Link]("Hasil NPM adalah :");

[Link] jPanel2Layout = new


[Link](jPanel2);
[Link](jPanel2Layout);
[Link](

[Link]([Link]
[Link])

.addGroup([Link],
[Link]()

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE)
.addComponent(selesaiButton)
.addContainerGap())
.addGroup([Link]()
.addGap(14, 14, 14)
.addComponent(hslLabel)

.addPreferredGap([Link]
LATED)
.addComponent(hasilLabel,
[Link].PREFERRED_SIZE, 86,
[Link].PREFERRED_SIZE)
.addContainerGap(69, Short.MAX_VALUE))
);
[Link](
[Link]([Link]
[Link])

.addGroup([Link],
[Link]()
.addGap(17, 17, 17)

.addGroup([Link]([Link]
[Link], false)
.addComponent(hslLabel,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(hasilLabel,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE))

.addPreferredGap([Link]
LATED, [Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(selesaiButton)
.addContainerGap())
);

[Link] layout = new


[Link](getContentPane());
getContentPane().setLayout(layout);
[Link](

[Link]([Link].L
EADING)
.addGroup([Link]()

.addGroup([Link]([Link].A
[Link])
.addGroup([Link]()
.addContainerGap()
.addComponent(jPanel1,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
RELATED)
.addComponent(jPanel2,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE))
.addGroup([Link]()
.addGap(126, 126, 126)
.addComponent(jLabel1)))

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))
);
[Link](

[Link]([Link].L
EADING)
.addGroup([Link]()
.addContainerGap()
.addComponent(jLabel1)

.addPreferredGap([Link]
LATED)

.addGroup([Link]([Link].A
[Link])
.addComponent(jPanel1,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel2,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap())
);

pack();
}// </editor-fold>

private void
prodiComboBoxActionPerformed([Link] evt) {
// TODO add your handling code here:
}

private void
noUrutFieldActionPerformed([Link] evt) {
// TODO add your handling code here:
}

private void
prosesButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
String prodi = null; // ””
String angkatan= null;
if([Link]()=="Matematika"){
prodi="103";
}
else if([Link]() == "Teknik
Informatika"){
prodi="203";
}
else if([Link]() == "Teknik
Elektro"){
prodi="303";
}
if([Link]()){
angkatan="09";
}
else if([Link]()){
angkatan="10";
}
else if([Link]()){
angkatan="11";
}

[Link]("140"+prodi+angkatan+[Link]())
;
}

private void
selesaiButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
[Link](0);
}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look
and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not
available, stay with the default look and feel.
* For details see
[Link]
/[Link]
*/
try {
for ([Link] info :
[Link]()) {
if ("Nimbus".equals([Link]())) {

[Link]([Link]());
break;
}
}
} catch (ClassNotFoundException ex) {

[Link]([Link]()).log(ja
[Link], null, ex);
} catch (InstantiationException ex) {

[Link]([Link]()).log(ja
[Link], null, ex);
} catch (IllegalAccessException ex) {

[Link]([Link]()).log(ja
[Link], null, ex);
} catch ([Link]
ex) {

[Link]([Link]()).log(ja
[Link], null, ex);
}
//</editor-fold>

/* Create and display the form */


[Link](new Runnable() {
public void run() {
new NPM().setVisible(true);
}
});
}
// Variables declaration - do not modify
private [Link] Ang09RadioButton;
private [Link] Ang10RadioButton;
private [Link] Ang11RadioButton;
private [Link] angkatanLabel;
private [Link] buttonGroup1;
private [Link] hasilLabel;
private [Link] hslLabel;
private [Link] jLabel1;
private [Link] jPanel1;
private [Link] jPanel2;
private [Link] noLabel;
private [Link] noUrutField;
private [Link]<String> prodiComboBox;
private [Link] prodiLabel;
private [Link] prosesButton;
private [Link] selesaiButton;
// End of variables declaration
}

Tampilan :

Output :
Konversi
Source Code
/*
* Click
nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-defa
[Link] to change this license
* Click
nbfs://nbhost/SystemFileSystem/Templates/GUIForms/[Link]
to edit this template
*/

/**
*
* @author wongf
*/
import [Link];
import [Link];

public class Konversi extends [Link] {


/**
* Creates new form Konversi
*/
public Konversi() {
initComponents();
}

/**
* This method is called from within the constructor to
initialize the form.
* WARNING: Do NOT modify this code. The content of this
method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated
Code">//GEN-BEGIN:initComponents
private void initComponents() {

JOptionPane = new [Link]();


jLabel1 = new [Link]();
jPanel2 = new [Link]();
inputComboBox = new [Link]<>();
inputField = new [Link]();
jPanel3 = new [Link]();
outputComboBox = new [Link]<>();
outputField = new [Link]();
bersihkanButton = new [Link]();
selesaiButton = new [Link]();
konversiButton = new [Link]();

setDefaultCloseOperation([Link].EXIT_ON_C
LOSE);

[Link](new [Link]("Segoe UI", 3, 24));


// NOI18N
[Link]("KONVERSI MATA UANG");

[Link]([Link]
("Input Uang"));
[Link](new
[Link]<>(new String[] { "< Pilih
Mata Uang >", "Dollar", "Euro", "Pounsterling", "Rupiah",
"Yen", "Dollar Singapura", "Dollar Australia", "Ringgit" }));

[Link](new
[Link]() {
public void focusLost([Link]
evt) {
inputFieldFocusLost(evt);
}
});
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
inputFieldActionPerformed(evt);
}
});

[Link] jPanel2Layout = new


[Link](jPanel2);
[Link](jPanel2Layout);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addGap(43, 43, 43)

.addGroup([Link]([Link]
[Link])
.addComponent(inputField,
[Link].PREFERRED_SIZE, 265,
[Link].PREFERRED_SIZE)
.addComponent(inputComboBox,
[Link].PREFERRED_SIZE, 265,
[Link].PREFERRED_SIZE))

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))
);
[Link](
[Link]([Link]
[Link])
.addGroup([Link]()
.addGap(29, 29, 29)
.addComponent(inputComboBox,
[Link].PREFERRED_SIZE, 35,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
RELATED)
.addComponent(inputField,
[Link].PREFERRED_SIZE, 35,
[Link].PREFERRED_SIZE)
.addContainerGap(29, Short.MAX_VALUE))
);

[Link]([Link]
("Hasil Konversi"));

[Link](new
[Link]<>(new String[] { "< Pilih
Mata Uang >", "Dollar", "Euro", "Pounsterling", "Yen",
"Rupiah", "Dollar Singapura", "Dollar Australia", "Ringgit"
}));
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
outputComboBoxActionPerformed(evt);
}
});

[Link](false);
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
outputFieldActionPerformed(evt);
}
});
[Link] jPanel3Layout = new
[Link](jPanel3);
[Link](jPanel3Layout);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addGap(43, 43, 43)

.addGroup([Link]([Link]
[Link])
.addComponent(outputField,
[Link].PREFERRED_SIZE, 265,
[Link].PREFERRED_SIZE)
.addComponent(outputComboBox,
[Link].PREFERRED_SIZE, 265,
[Link].PREFERRED_SIZE))
.addContainerGap(34, Short.MAX_VALUE))
);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addGap(29, 29, 29)
.addComponent(outputComboBox,
[Link].PREFERRED_SIZE, 35,
[Link].PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(outputField,
[Link].PREFERRED_SIZE, 35,
[Link].PREFERRED_SIZE)
.addContainerGap(29, Short.MAX_VALUE))
);

[Link]("Bersihkan");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
bersihkanButtonActionPerformed(evt);
}
});
[Link]("Selesai");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
selesaiButtonActionPerformed(evt);
}
});

[Link]("Konversi");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
konversiButtonActionPerformed(evt);
}
});

[Link] layout = new


[Link](getContentPane());
getContentPane().setLayout(layout);
[Link](

[Link]([Link].L
EADING)
.addGroup([Link]()
.addGap(22, 22, 22)

.addGroup([Link]([Link].A
[Link])
.addGroup([Link]()
.addGap(38, 38, 38)
.addComponent(jLabel1))

.addGroup([Link]([Link].A
[Link], false)

.addGroup([Link],
[Link]()
.addComponent(bersihkanButton,
[Link].PREFERRED_SIZE, 100,
[Link].PREFERRED_SIZE)
.addGap(26, 26, 26)
.addComponent(selesaiButton,
[Link].PREFERRED_SIZE, 100,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED, [Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(konversiButton,
[Link].PREFERRED_SIZE, 100,
[Link].PREFERRED_SIZE))
.addComponent(jPanel2,
[Link],
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel3,
[Link],
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)))
.addContainerGap(30, Short.MAX_VALUE))
);
[Link](

[Link]([Link].L
EADING)
.addGroup([Link]()
.addGap(20, 20, 20)
.addComponent(jLabel1,
[Link].PREFERRED_SIZE, 42,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
RELATED)
.addComponent(jPanel2,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
RELATED)
.addComponent(jPanel3,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addGap(18, 18, 18)
.addGroup([Link]([Link].A
[Link])
.addComponent(bersihkanButton)

.addGroup([Link]([Link].A
[Link])
.addComponent(konversiButton)
.addComponent(selesaiButton)))
.addContainerGap(20, Short.MAX_VALUE))
);

pack();
}// </editor-fold>//GEN-END:initComponents

private void konversiDariRupiah() {

double hasil;
NumberFormat formatRupiah =
[Link](new Locale("id", "ID"));
String pilihan =
[Link]().toString();

switch (pilihan) {
case "Dollar":
NumberFormat formatDollar =
[Link](new Locale("en", "US"));
hasil = [Link]([Link]())
* 15583;

[Link]([Link](hasil));
break;
case "Euro":
NumberFormat formatEuro =
[Link](new Locale("de", "DE"));
hasil = [Link]([Link]())
* 18500; // asumsi 1 Euro = 18500 Rupiah
[Link]([Link](hasil));
break;
case "Pounsterling":
NumberFormat formatPound =
[Link](new Locale("en", "GB"));
hasil = [Link]([Link]())
* 21500; // asumsi 1 Pounsterling = 21500 Rupiah
[Link]([Link](hasil));
break;
case "Yen":
NumberFormat formatYen =
[Link](new Locale("ja", "JP"));
hasil = [Link]([Link]())
* 142; // asumsi 1 Yen = 142 Rupiah
[Link]([Link](hasil));
break;
case "Dollar Singapura":
NumberFormat formatSGD =
[Link](new Locale("en", "SG"));
hasil = [Link]([Link]())
* 11500; // asumsi 1 Dollar Singapura = 11500 Rupiah
[Link]([Link](hasil));
break;
case "Dollar Australia":
NumberFormat formatAUD =
[Link](new Locale("en", "AU"));
hasil = [Link]([Link]())
* 11500; // asumsi 1 Dollar Australia = 11500 Rupiah
[Link]([Link](hasil));
break;
case "Ringgit":
NumberFormat formatMYR =
[Link](new Locale("ms", "MY"));
hasil = [Link]([Link]())
* 3700; // asumsi 1 Ringgit = 3700 Rupiah
[Link]([Link](hasil));
break;
default:
// kode untuk kasus default
}
}

private void konversiDariDolar() {


double hasil;
NumberFormat formatDollar =
[Link](new Locale("en", "US"));
String pilihan =
[Link]().toString();

switch (pilihan) {
case "Rupiah":
NumberFormat formatRupiah =
[Link](new Locale("id", "ID"));
hasil = [Link]([Link]())
* 15583;

[Link]([Link](hasil));
break;
case "Euro":
NumberFormat formatEuro =
[Link](new Locale("de", "DE"));
hasil = [Link]([Link]())
* 0.85; // asumsi 1 Dolar = 0.85 Euro
[Link]([Link](hasil));
break;
case "Pounsterling":
NumberFormat formatPound =
[Link](new Locale("en", "GB"));
hasil = [Link]([Link]())
* 0.75; // asumsi 1 Dolar = 0.75 Pounsterling

[Link]([Link](hasil));
break;
case "Yen":
NumberFormat formatYen =
[Link](new Locale("ja", "JP"));
hasil = [Link]([Link]())
* 0.0091; // asumsi 1 Dolar = 0.0091 Yen
[Link]([Link](hasil));
break;
case "Dollar Singapura":
NumberFormat formatSGD =
[Link](new Locale("en", "SG"));
hasil = [Link]([Link]())
* 0.74; // asumsi 1 Dolar = 0.74 Dollar Singapura
[Link]([Link](hasil));
break;
case "Dollar Australia":
NumberFormat formatAUD =
[Link](new Locale("en", "AU"));
hasil = [Link]([Link]())
* 1.36; // asumsi 1 Dolar = 1.36 Dollar Australia
[Link]([Link](hasil));
break;
case "Ringgit":
NumberFormat formatMYR =
[Link](new Locale("ms", "MY"));
hasil = [Link]([Link]())
* 0.24; // asumsi 1 Dolar = 0.24 Ringgit
[Link]([Link](hasil));
break;
default:
// kode untuk kasus default
}
}

private void konversiDariEuro() {


double hasil;
NumberFormat formatEuro =
[Link](new Locale("de", "DE"));
String pilihan =
[Link]().toString();

switch (pilihan) {
case "Rupiah":
NumberFormat formatRupiah =
[Link](new Locale("id", "ID"));
hasil = [Link]([Link]())
* 18500; // asumsi 1 Euro = 18500 Rupiah

[Link]([Link](hasil));
break;
case "Dollar":
NumberFormat formatDollar =
[Link](new Locale("en", "US"));
hasil = [Link]([Link]())
* 1.18; // asumsi 1 Euro = 1.18 Dolar

[Link]([Link](hasil));
break;
case "Pounsterling":
NumberFormat formatPound =
[Link](new Locale("en", "GB"));
hasil = [Link]([Link]())
* 0.88; // asumsi 1 Euro = 0.88 Pounsterling

[Link]([Link](hasil));
break;
case "Yen":
NumberFormat formatYen =
[Link](new Locale("ja", "JP"));
hasil = [Link]([Link]())
* 0.0076; // asumsi 1 Euro = 0.0076 Yen
[Link]([Link](hasil));
break;
case "Dollar Singapura":
NumberFormat formatSGD =
[Link](new Locale("en", "SG"));
hasil = [Link]([Link]())
* 1.59; // asumsi 1 Euro = 1.59 Dollar Singapura
[Link]([Link](hasil));
break;
case "Dollar Australia":
NumberFormat formatAUD =
[Link](new Locale("en", "AU"));
hasil = [Link]([Link]())
* 1.61; // asumsi 1 Euro = 1.61 Dollar Australia
[Link]([Link](hasil));
break;
case "Ringgit":
NumberFormat formatMYR =
[Link](new Locale("ms", "MY"));
hasil = [Link]([Link]())
* 0.20; // asumsi 1 Euro = 0.20 Ringgit
[Link]([Link](hasil));
break;
default:
// kode untuk kasus default
}
}

private void konversiDariYen() {


double hasil;
NumberFormat formatYen =
[Link](new Locale("ja", "JP"));
String pilihan =
[Link]().toString();

switch (pilihan) {
case "Rupiah":
NumberFormat formatRupiah =
[Link](new Locale("id", "ID"));
hasil = [Link]([Link]())
* 142; // asumsi 1 Yen = 142 Rupiah

[Link]([Link](hasil));
break;
case "Dollar":
NumberFormat formatDollar =
[Link](new Locale("en", "US"));
hasil = [Link]([Link]())
* 110; // asumsi 1 Yen = 110 Dolar

[Link]([Link](hasil));
break;
case "Euro":
NumberFormat formatEuro =
[Link](new Locale("de", "DE"));
hasil = [Link]([Link]())
/ 130; // asumsi 1 Yen = 130 Euro
[Link]([Link](hasil));
break;
case "Pounsterling":
NumberFormat formatPound =
[Link](new Locale("en", "GB"));
hasil = [Link]([Link]())
* 150; // asumsi 1 Yen = 150 Pounsterling

[Link]([Link](hasil));
break;
case "Dollar Singapura":
NumberFormat formatSGD =
[Link](new Locale("en", "SG"));
hasil = [Link]([Link]())
/ 80; // asumsi 1 Yen = 80 Dollar Singapura
[Link]([Link](hasil));
break;
case "Dollar Australia":
NumberFormat formatAUD =
[Link](new Locale("en", "AU"));
hasil = [Link]([Link]())
* 85; // asumsi 1 Yen = 85 Dollar Australia
[Link]([Link](hasil));
break;
case "Ringgit":
NumberFormat formatMYR =
[Link](new Locale("ms", "MY"));
hasil = [Link]([Link]())
* 25; // asumsi 1 Yen = 25 Ringgit
[Link]([Link](hasil));
break;
default:
// kode untuk kasus default
}
}

private void konversiDariPounsterling() {


double hasil;
NumberFormat formatPound =
[Link](new Locale("en", "GB"));
String pilihan =
[Link]().toString();

switch (pilihan) {
case "Rupiah":
NumberFormat formatRupiah =
[Link](new Locale("id", "ID"));
hasil = [Link]([Link]())
* 21500; // asumsi 1 Pounsterling = 21500 Rupiah

[Link]([Link](hasil));
break;
case "Dollar":
NumberFormat formatDollar =
[Link](new Locale("en", "US"));
hasil = [Link]([Link]())
* 1.33; // asumsi 1 Pounsterling = 1.33 Dolar

[Link]([Link](hasil));
break;
case "Euro":
NumberFormat formatEuro =
[Link](new Locale("de", "DE"));
hasil = [Link]([Link]())
* 1.14; // asumsi 1 Pounsterling = 1.14 Euro
[Link]([Link](hasil));
break;
case "Yen":
NumberFormat formatYen =
[Link](new Locale("ja", "JP"));
hasil = [Link]([Link]())
* 0.0071; // asumsi 1 Pounsterling = 0.0071 Yen
[Link]([Link](hasil));
break;
case "Dollar Singapura":
NumberFormat formatSGD =
[Link](new Locale("en", "SG"));
hasil = [Link]([Link]())
* 1.79; // asumsi 1 Pounsterling = 1.79 Dollar Singapura
[Link]([Link](hasil));
break;
case "Dollar Australia":
NumberFormat formatAUD =
[Link](new Locale("en", "AU"));
hasil = [Link]([Link]())
* 1.81; // asumsi 1 Pounsterling = 1.81 Dollar Australia
[Link]([Link](hasil));
break;
case "Ringgit":
NumberFormat formatMYR =
[Link](new Locale("ms", "MY"));
hasil = [Link]([Link]())
* 0.22; // asumsi 1 Pounsterling = 0.22 Ringgit
[Link]([Link](hasil));
break;
default:
// kode untuk kasus default
}
}

private void konversiDariRinggit() {


double hasil;
NumberFormat formatMYR =
[Link](new Locale("ms", "MY"));
String pilihan =
[Link]().toString();

switch (pilihan) {
case "Rupiah":
NumberFormat formatRupiah =
[Link](new Locale("id", "ID"));
hasil = [Link]([Link]())
* 3700; // asumsi 1 Ringgit = 3700 Rupiah

[Link]([Link](hasil));
break;
case "Dollar":
NumberFormat formatDollar =
[Link](new Locale("en", "US"));
hasil = [Link]([Link]())
* 4.15; // asumsi 1 Ringgit = 4.15 Dolar

[Link]([Link](hasil));
break;
case "Euro":
NumberFormat formatEuro =
[Link](new Locale("de", "DE"));
hasil = [Link]([Link]())
* 4.85; // asumsi 1 Ringgit = 4.85 Euro
[Link]([Link](hasil));
break;
case "Pounsterling":
NumberFormat formatPound =
[Link](new Locale("en", "GB"));
hasil = [Link]([Link]())
* 5.5; // asumsi 1 Ringgit = 5.5 Pounsterling

[Link]([Link](hasil));
break;
case "Yen":
NumberFormat formatYen =
[Link](new Locale("ja", "JP"));
hasil = [Link]([Link]())
* 0.036; // asumsi 1 Ringgit = 0.036 Yen
[Link]([Link](hasil));
break;
case "Dollar Singapura":
NumberFormat formatSGD =
[Link](new Locale("en", "SG"));
hasil = [Link]([Link]())
* 3.05; // asumsi 1 Ringgit = 3.05 Dollar Singapura
[Link]([Link](hasil));
break;
case "Dollar Australia":
NumberFormat formatAUD =
[Link](new Locale("en", "AU"));
hasil = [Link]([Link]())
* 3.2; // asumsi 1 Ringgit = 3.2 Dollar Australia
[Link]([Link](hasil));
break;
default:
// kode untuk kasus default
}
}

private void konversiDariDollarAustralia() {


double hasil;
NumberFormat formatAUD =
[Link](new Locale("en", "AU"));
String pilihan =
[Link]().toString();

switch (pilihan) {
case "Rupiah":
NumberFormat formatRupiah =
[Link](new Locale("id", "ID"));
hasil = [Link]([Link]())
* 11500; // asumsi 1 Dollar Australia = 11500 Rupiah

[Link]([Link](hasil));
break;
case "Dollar":
NumberFormat formatDollar =
[Link](new Locale("en", "US"));
hasil = [Link]([Link]())
/ 0.72; // asumsi 1 Dollar Australia = 0.72 Dolar

[Link]([Link](hasil));
break;
case "Euro":
NumberFormat formatEuro =
[Link](new Locale("de", "DE"));
hasil = [Link]([Link]())
* 0.61; // asumsi 1 Dollar Australia = 0.61 Euro
[Link]([Link](hasil));
break;
case "Pounsterling":
NumberFormat formatPound =
[Link](new Locale("en", "GB"));
hasil = [Link]([Link]())
* 0.53; // asumsi 1 Dollar Australia = 0.53 Pounsterling

[Link]([Link](hasil));
break;
case "Yen":
NumberFormat formatYen =
[Link](new Locale("ja", "JP"));
hasil = [Link]([Link]())
/ 0.0081; // asumsi 1 Dollar Australia = 0.0081 Yen
[Link]([Link](hasil));
break;
case "Dollar Singapura":
NumberFormat formatSGD =
[Link](new Locale("en", "SG"));
hasil = [Link]([Link]())
* 0.98; // asumsi 1 Dollar Australia = 0.98 Dollar Singapura
[Link]([Link](hasil));
break;
case "Ringgit":
NumberFormat formatMYR =
[Link](new Locale("ms", "MY"));
hasil = [Link]([Link]())
* 2.36; // asumsi 1 Dollar Australia = 2.36 Ringgit
[Link]([Link](hasil));
break;
default:
// kode untuk kasus default
}
}

private void konversiDariDollarSingapura() {


double hasil;
NumberFormat formatSGD =
[Link](new Locale("en", "SG"));
String pilihan =
[Link]().toString();

switch (pilihan) {
case "Rupiah":
NumberFormat formatRupiah =
[Link](new Locale("id", "ID"));
hasil = [Link]([Link]())
* 11500; // asumsi 1 Dollar Singapura = 11500 Rupiah

[Link]([Link](hasil));
break;
case "Dollar":
NumberFormat formatDollar =
[Link](new Locale("en", "US"));
hasil = [Link]([Link]())
* 0.74; // asumsi 1 Dollar Singapura = 0.74 Dolar

[Link]([Link](hasil));
break;
case "Euro":
NumberFormat formatEuro =
[Link](new Locale("de", "DE"));
hasil = [Link]([Link]())
* 0.63; // asumsi 1 Dollar Singapura = 0.63 Euro
[Link]([Link](hasil));
break;
case "Pounsterling":
NumberFormat formatPound =
[Link](new Locale("en", "GB"));
hasil = [Link]([Link]())
* 0.55; // asumsi 1 Dollar Singapura = 0.55 Pounsterling

[Link]([Link](hasil));
break;
case "Yen":
NumberFormat formatYen =
[Link](new Locale("ja", "JP"));
hasil = [Link]([Link]())
* 0.0083; // asumsi 1 Dollar Singapura = 0.0083 Yen
[Link]([Link](hasil));
break;
case "Ringgit":
NumberFormat formatMYR =
[Link](new Locale("ms", "MY"));
hasil = [Link]([Link]())
* 2.43; // asumsi 1 Dollar Singapura = 2.43 Ringgit
[Link]([Link](hasil));
break;
case "Dollar Australia":
NumberFormat formatAUD =
[Link](new Locale("en", "AU"));
hasil = [Link]([Link]())
* 1.03; // asumsi 1 Dollar Singapura = 1.03 Dollar Australia
[Link]([Link](hasil));
break;
default:
// kode untuk kasus default
}
}

private void
inputFieldActionPerformed([Link] evt)
{//GEN-FIRST:event_inputFieldActionPerformed
// TODO add your handling code here:
}//GEN-LAST:event_inputFieldActionPerformed

private void
outputFieldActionPerformed([Link] evt)
{//GEN-FIRST:event_outputFieldActionPerformed
// TODO add your handling code here:
}//GEN-LAST:event_outputFieldActionPerformed

private void
konversiButtonActionPerformed([Link] evt)
{//GEN-FIRST:event_konversiButtonActionPerformed
// TODO add your handling code here:
String pilihan =
[Link]().toString();
switch (pilihan) {
case "Rupiah":
konversiDariRupiah();
break;
case "Dollar":
konversiDariDolar();
break;
case "Euro":
konversiDariEuro();
break;
case "Pounsterling":
konversiDariPounsterling();
break;
case "Yen":
konversiDariYen();
break;
case "Dollar Singapura":
konversiDariDollarSingapura();
break;
case "Dollar Australia":
konversiDariDollarAustralia();
break;
case "Ringgit":
konversiDariRinggit();
break;
default:
// kode untuk kasus default
}
}//GEN-LAST:event_konversiButtonActionPerformed

private void
selesaiButtonActionPerformed([Link] evt)
{//GEN-FIRST:event_selesaiButtonActionPerformed
// TODO add your handling code here:
[Link](0);
}//GEN-LAST:event_selesaiButtonActionPerformed

private void
bersihkanButtonActionPerformed([Link] evt)
{//GEN-FIRST:event_bersihkanButtonActionPerformed
// TODO add your handling code here:
[Link]("");
[Link]("");

}//GEN-LAST:event_bersihkanButtonActionPerformed

private void
outputComboBoxActionPerformed([Link] evt)
{//GEN-FIRST:event_outputComboBoxActionPerformed
// TODO add your handling code here:
}//GEN-LAST:event_outputComboBoxActionPerformed

private void inputFieldFocusLost([Link]


evt) {//GEN-FIRST:event_inputFieldFocusLost
// TODO add your handling code here:
try {
int num = [Link]([Link]());
} catch (NumberFormatException e) {
[Link](null, "Input harus
berupa angka", "Kesalahan Input", JOptionPane.ERROR_MESSAGE);
}
}//GEN-LAST:event_inputFieldFocusLost

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look
and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not
available, stay with the default look and feel.
* For details see
[Link]
/[Link]
*/
try {
for ([Link] info :
[Link]()) {
if ("Nimbus".equals([Link]())) {

[Link]([Link]());
break;
}
}
} catch (ClassNotFoundException ex) {

[Link]([Link]()).l
og([Link], null, ex);
} catch (InstantiationException ex) {

[Link]([Link]()).l
og([Link], null, ex);
} catch (IllegalAccessException ex) {

[Link]([Link]()).l
og([Link], null, ex);
} catch ([Link]
ex) {

[Link]([Link]()).l
og([Link], null, ex);
}
//</editor-fold>
//</editor-fold>

/* Create and display the form */


[Link](new Runnable() {
public void run() {
new Konversi().setVisible(true);
}
});
}

// Variables declaration - do not


modify//GEN-BEGIN:variables
private [Link] JOptionPane;
private [Link] bersihkanButton;
private [Link]<String> inputComboBox;
private [Link] inputField;
private [Link] jLabel1;
private [Link] jPanel2;
private [Link] jPanel3;
private [Link] konversiButton;
private [Link]<String> outputComboBox;
private [Link] outputField;
private [Link] selesaiButton;
// End of variables declaration//GEN-END:variables
}

Output
Program Persegi Panjang
Source Code:
/*
* Click
nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-defa
[Link] to change this license
* Click
nbfs://nbhost/SystemFileSystem/Templates/GUIForms/[Link]
to edit this template
*/
package PersegiPanjangku;

/**
*
* @author
* /*
* Anggota 1 : Alif Al Husaini
* NPM : 140810220036
* Anggota 2 : Rio Irawan
* NPM : 140810220084
* Anggota 3 : Angga Prasetyo
* NPM : 140810220086
* Kelas : B
* Tanggal : 19 November 2023
* Deskripsi : Program GUI dengan Java
*/
public class PersegiPanjang extends [Link] {

/**
* Creates new form PersegiPanjang
*/
public PersegiPanjang() {
initComponents();
}

/**
* This method is called from within the constructor to
initialize the form.
* WARNING: Do NOT modify this code. The content of this
method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated
Code">
private void initComponents() {

JOptionPane = new [Link]();


jPanel1 = new [Link]();
jLabel1 = new [Link]();
jPanel2 = new [Link]();
luasLabel = new [Link]();
lebarLabel = new [Link]();
panjangLabel = new [Link]();
panjangField = new [Link]();
lebarField = new [Link]();
luasField = new [Link]();
Bersihkan = new [Link]();
prosesButton = new [Link]();
bersihButton = new [Link]();
selesaiButton = new [Link]();

[Link](true);

setDefaultCloseOperation([Link].EXIT_ON_C
LOSE);

[Link](new
[Link]([Link]
[Link]));
[Link](new [Link]("Segoe UI", 0, 18));
// NOI18N

[Link](new [Link]("Segoe UI", 0, 18));


// NOI18N

[Link]([Link]
ER);
[Link]("Program Perhitungan Persegi
Panjang");

[Link] jPanel1Layout = new


[Link](jPanel1);
[Link](jPanel1Layout);
[Link](
[Link]([Link]
[Link])
.addComponent(jLabel1,
[Link],
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
);
[Link](

[Link]([Link]
[Link])

.addGroup([Link],
[Link]()

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE)
.addComponent(jLabel1)
.addContainerGap())
);

[Link]([Link](
[Link]));

[Link]("Luas Persegi Panjang :");

[Link]("Masukkan Lebar :");

[Link]("Masukkan Panjang :");

[Link](new
[Link]() {
public void focusLost([Link]
evt) {
panjangFieldFocusLost(evt);
}
});
[Link](new
[Link]() {
public void keyPressed([Link]
evt) {
panjangFieldKeyPressed(evt);
}
});

[Link](new
[Link]() {
public void focusLost([Link]
evt) {
lebarFieldFocusLost(evt);
}
});
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
lebarFieldActionPerformed(evt);
}
});

[Link](false);

[Link] jPanel2Layout = new


[Link](jPanel2);
[Link](jPanel2Layout);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addContainerGap()

.addGroup([Link]([Link]
[Link])
.addComponent(lebarLabel,
[Link].PREFERRED_SIZE, 110,
[Link].PREFERRED_SIZE)
.addComponent(luasLabel,
[Link].PREFERRED_SIZE, 133,
[Link].PREFERRED_SIZE)
.addComponent(panjangLabel,
[Link].PREFERRED_SIZE, 110,
[Link].PREFERRED_SIZE))

.addPreferredGap([Link]
LATED)
.addGroup([Link]([Link]
[Link])
.addComponent(panjangField,
[Link].PREFERRED_SIZE, 175,
[Link].PREFERRED_SIZE)
.addComponent(luasField,
[Link].PREFERRED_SIZE, 175,
[Link].PREFERRED_SIZE)
.addComponent(lebarField,
[Link].PREFERRED_SIZE, 175,
[Link].PREFERRED_SIZE))
.addContainerGap(55, Short.MAX_VALUE))
);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addContainerGap()

.addGroup([Link]([Link]
[Link])
.addComponent(panjangLabel)
.addComponent(panjangField,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE))
.addGap(21, 21, 21)

.addGroup([Link]([Link]
[Link])
.addComponent(lebarLabel)
.addComponent(lebarField,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE))
.addGap(18, 18, 18)

.addGroup([Link]([Link]
[Link])
.addComponent(luasLabel)
.addComponent(luasField,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE))

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))
);

[Link](new
[Link]([Link]
[Link]));

[Link]("Proses");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
prosesButtonActionPerformed(evt);
}
});
[Link](new
[Link]() {
public void keyPressed([Link]
evt) {
prosesButtonKeyPressed(evt);
}
});

[Link]("Bersihkan");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
bersihButtonActionPerformed(evt);
}
});

[Link]("Selesai");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
selesaiButtonActionPerformed(evt);
}
});
[Link] BersihkanLayout = new
[Link](Bersihkan);
[Link](BersihkanLayout);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addContainerGap()
.addComponent(prosesButton)

.addPreferredGap([Link]
LATED, [Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(bersihButton)
.addGap(66, 66, 66)
.addComponent(selesaiButton)
.addContainerGap())
);
[Link](

[Link]([Link]
[Link])

.addGroup([Link],
[Link]()
.addContainerGap(18, Short.MAX_VALUE)

.addGroup([Link]([Link]
[Link])
.addComponent(prosesButton)
.addComponent(bersihButton)
.addComponent(selesaiButton))
.addGap(15, 15, 15))
);

[Link] layout = new


[Link](getContentPane());
getContentPane().setLayout(layout);
[Link](

[Link]([Link].L
EADING)
.addGroup([Link]()
.addContainerGap()

.addGroup([Link]([Link].A
[Link])
.addComponent(jPanel1,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup([Link]()
.addComponent(jPanel2,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addGap(0, 0, Short.MAX_VALUE))
.addComponent(Bersihkan,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap())
);
[Link](

[Link]([Link].L
EADING)
.addGroup([Link]()
.addGap(17, 17, 17)
.addComponent(jPanel1,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(jPanel2,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(Bersihkan,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addContainerGap(17, Short.MAX_VALUE))
);

pack();
}// </editor-fold>
private void
selesaiButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
[Link](0);
}

private void
prosesButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
prosesHitungLuas();
}

private void
prosesButtonKeyPressed([Link] evt) {
// TODO add your handling code here:
if ([Link]() == 0x0A) {
prosesHitungLuas();
}

private void
panjangFieldFocusLost([Link] evt) {
// TODO add your handling code here:
float pjg;
try {
pjg = [Link]([Link]());
} catch (Throwable t) {
//[Link](null,"Nilai non
numerik, "
// + "silahkan dilengkapi");
//atau
[Link](null, "Nilai non
numerik, "
+ "silahkan dilengkapi", "Ada Kesalahan",
1);
[Link]();
}
}

private void
panjangFieldKeyPressed([Link] evt) {
// TODO add your handling code here:
if ([Link]() == 0x0A) {
[Link]();
}
}

private void
lebarFieldActionPerformed([Link] evt) {
// TODO add your handling code here:

[Link]();

private void lebarFieldFocusLost([Link]


evt) {
// TODO add your handling code here:
try {
// Lakukan pemeriksaan apakah nilai yang
dimasukkan adalah numerik
[Link]([Link]());
} catch (NumberFormatException ex) {
[Link](null, "Masukkan
angka yang valid.", "Error", JOptionPane.ERROR_MESSAGE);
[Link](); // Kembali meminta
fokus ke lebarField
}
}

private void
bersihButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
[Link]("");
[Link]("");
[Link]("");
}

private float hitungLuas(float pjg, float lbr) {


return (pjg * lbr);
}

private void prosesHitungLuas() {


float panjang, lebar, luas;
try {
panjang =
[Link]([Link]());
lebar = [Link]([Link]());
luas = hitungLuas(panjang, lebar);
[Link]([Link](luas));
} catch (Throwable t) {
[Link](null, "Nilai bukan
numerik, "
+ "silahkan diperbaiki untuk bisa
diproses");
}
}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look
and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not
available, stay with the default look and feel.
* For details see
[Link]
/[Link]
*/
try {
for ([Link] info :
[Link]()) {
if ("Nimbus".equals([Link]())) {

[Link]([Link]());
break;
}
}
} catch (ClassNotFoundException ex) {

[Link]([Link]
e()).log([Link], null, ex);
} catch (InstantiationException ex) {

[Link]([Link]
e()).log([Link], null, ex);
} catch (IllegalAccessException ex) {
[Link]([Link]
e()).log([Link], null, ex);
} catch ([Link]
ex) {

[Link]([Link]
e()).log([Link], null, ex);
}
//</editor-fold>

/* Create and display the form */


[Link](new Runnable() {
public void run() {
new PersegiPanjang().setVisible(true);
}
});
}

// Variables declaration - do not modify


private [Link] Bersihkan;
private [Link] JOptionPane;
private [Link] bersihButton;
private [Link] jLabel1;
private [Link] jPanel1;
private [Link] jPanel2;
private [Link] lebarField;
private [Link] lebarLabel;
private [Link] luasField;
private [Link] luasLabel;
private [Link] panjangField;
private [Link] panjangLabel;
private [Link] prosesButton;
private [Link] selesaiButton;
// End of variables declaration
}
Output:
Menu Persegi Panjang
Source Code :
/*
* Click
nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-defa
[Link] to change this license
* Click
nbfs://nbhost/SystemFileSystem/Templates/GUIForms/[Link]
to edit this template
*/
package PersegiPanjangku;

import [Link];

/**
*
* @author
* /*
* Anggota 1 : Alif Al Husaini
* NPM : 140810220036
* Anggota 2 : Rio Irawan
* NPM : 140810220084
* Anggota 3 : Angga Prasetyo
* NPM : 140810220086
* Kelas : B
* Tanggal : 19 November 2023
* Deskripsi : Program GUI dengan Java
*/
public class PersegiPanjang extends [Link] {

/**
* Creates new form Segitiga
*/
public PersegiPanjang() {
initComponents();
}

/**
* This method is called from within the constructor to
initialize the form.
* WARNING: Do NOT modify this code. The content of this
method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated
Code">
private void initComponents() {

jOptionPane = new [Link]();


selesaiButton = new [Link]();
kembaliButton = new [Link]();
jPanel1 = new [Link]();
judulLabel = new [Link]();
jPanel2 = new [Link]();
panjangLabel = new [Link]();
lebarLabel = new [Link]();
panjangField = new [Link]();
lebarField = new [Link]();
bersihButton = new [Link]();
prosesButton = new [Link]();
jPanel3 = new [Link]();
luasLabel = new [Link]();
luasField = new [Link]();

setDefaultCloseOperation([Link].EXIT_ON_C
LOSE);

[Link](new [Link](153,
153, 255));
[Link]("Selesai");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
selesaiButtonActionPerformed(evt);
}
});

[Link](new [Link](153,
153, 255));
[Link](new [Link](255,
255, 255));
[Link]("Kembali ke Menu");
[Link](new
[Link]() {
public void focusGained([Link]
evt) {
kembaliButtonFocusGained(evt);
}
});
[Link](new
[Link]() {
public void mouseClicked([Link]
evt) {
kembaliButtonMouseClicked(evt);
}
});
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
kembaliButtonActionPerformed(evt);
}
});

[Link](new [Link](204, 204,


255));

[Link](new [Link]("Courier New", 0,


24)); // NOI18N

[Link]([Link].C
ENTER);
[Link]("Persegi Panjang");

[Link] jPanel1Layout = new


[Link](jPanel1);
[Link](jPanel1Layout);
[Link](

[Link]([Link]
[Link])

.addGroup([Link],
[Link]()

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE)
.addComponent(judulLabel,
[Link].PREFERRED_SIZE, 219,
[Link].PREFERRED_SIZE)

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))
);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addGap(21, 21, 21)
.addComponent(judulLabel)
.addContainerGap(23, Short.MAX_VALUE))
);

[Link](new [Link](204, 255,


255));

[Link]([Link]
(null, "Input",
[Link].DEFAULT_JUSTIFICATION,
[Link].DEFAULT_POSITION, new
[Link]("sansserif", 1, 12))); // NOI18N

[Link]("Panjang :");

[Link]("Lebar :");

[Link](new
[Link]() {
public void focusLost([Link]
evt) {
panjangFieldFocusLost(evt);
}
});
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
panjangFieldActionPerformed(evt);
}
});
[Link](new
[Link]() {
public void focusGained([Link]
evt) {
lebarFieldFocusGained(evt);
}
public void focusLost([Link]
evt) {
lebarFieldFocusLost(evt);
}
});
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
lebarFieldActionPerformed(evt);
}
});

[Link]("Bersihkan");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
bersihButtonActionPerformed(evt);
}
});

[Link]("Proses");
[Link](new
[Link]() {
public void focusGained([Link]
evt) {
prosesButtonFocusGained(evt);
}
});
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
prosesButtonActionPerformed(evt);
}
});
[Link](new
[Link]() {
public void keyPressed([Link]
evt) {
prosesButtonKeyPressed(evt);
}
});

[Link] jPanel2Layout = new


[Link](jPanel2);
[Link](jPanel2Layout);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addContainerGap()

.addGroup([Link]([Link]
[Link])

.addGroup([Link]()
.addComponent(lebarLabel,
[Link].PREFERRED_SIZE, 97,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED)
.addComponent(lebarField,
[Link].PREFERRED_SIZE, 111,
[Link].PREFERRED_SIZE))

.addGroup([Link]()
.addComponent(panjangLabel,
[Link].PREFERRED_SIZE, 97,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED)
.addComponent(panjangField,
[Link].PREFERRED_SIZE, 111,
[Link].PREFERRED_SIZE)))
.addPreferredGap([Link]
LATED, 35, Short.MAX_VALUE)

.addGroup([Link]([Link]
[Link], false)
.addComponent(prosesButton,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(bersihButton,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap(36, Short.MAX_VALUE))
);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addGap(16, 16, 16)

.addGroup([Link]([Link]
[Link])
.addComponent(panjangLabel)
.addComponent(panjangField,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addComponent(prosesButton))
.addGap(12, 12, 12)

.addGroup([Link]([Link]
[Link])
.addComponent(lebarLabel)
.addComponent(lebarField,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addComponent(bersihButton))
.addContainerGap(32, Short.MAX_VALUE))
);

[Link](new [Link](204, 255,


255));
[Link]([Link]
(null, "Hasil",
[Link].DEFAULT_JUSTIFICATION,
[Link].DEFAULT_POSITION, new
[Link]("sansserif", 1, 12))); // NOI18N

[Link]("Luas :");

[Link](false);
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
luasFieldActionPerformed(evt);
}
});

[Link] jPanel3Layout = new


[Link](jPanel3);
[Link](jPanel3Layout);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addContainerGap()
.addComponent(luasLabel,
[Link].PREFERRED_SIZE, 97,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED)
.addComponent(luasField,
[Link].PREFERRED_SIZE, 111,
[Link].PREFERRED_SIZE)

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))
);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()

.addGroup([Link]([Link]
[Link])
.addComponent(luasLabel)
.addComponent(luasField,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE))
.addGap(0, 16, Short.MAX_VALUE))
);

[Link] layout = new


[Link](getContentPane());
getContentPane().setLayout(layout);
[Link](

[Link]([Link].L
EADING)
.addGroup([Link]()

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE)
.addComponent(kembaliButton,
[Link].PREFERRED_SIZE, 155,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED)
.addComponent(selesaiButton,
[Link].PREFERRED_SIZE, 155,
[Link].PREFERRED_SIZE)

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))
.addGroup([Link]()
.addContainerGap(33, Short.MAX_VALUE)

.addGroup([Link]([Link].A
[Link], false)
.addComponent(jPanel2,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel3,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap(28, Short.MAX_VALUE))
.addComponent(jPanel1,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
);
[Link](

[Link]([Link].L
EADING)

.addGroup([Link],
[Link]()
.addComponent(jPanel1,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addGap(31, 31, 31)
.addComponent(jPanel2,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED)
.addComponent(jPanel3,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addGap(17, 17, 17)

.addGroup([Link]([Link].A
[Link])
.addComponent(selesaiButton)
.addComponent(kembaliButton))
.addContainerGap())
);

pack();
}// </editor-fold>
private void
selesaiButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
[Link](0);
}

private void
kembaliButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
kosongkanInput();
Menu obj = new Menu();
[Link](true);
dispose();
}

private void
panjangFieldActionPerformed([Link] evt) {
// TODO add your handling code here:
[Link]();
}

private void
lebarFieldActionPerformed([Link] evt) {
// TODO add your handling code here:
[Link]();
}

private void
luasFieldActionPerformed([Link] evt) {
// TODO add your handling code here:
}

private void
panjangFieldFocusLost([Link] evt) {
// TODO add your handling code here:
try {
// Lakukan pemeriksaan apakah nilai yang
dimasukkan adalah numerik
[Link]([Link]());
} catch (NumberFormatException ex) {
[Link](null, "Masukkan
angka yang valid.", "Error", jOptionPane.ERROR_MESSAGE);
[Link](); // Kembali meminta
fokus ke panjangField
}
}

private void lebarFieldFocusLost([Link]


evt) {
// TODO add your handling code here:
try {
// Lakukan pemeriksaan apakah nilai yang
dimasukkan adalah numerik
[Link]([Link]());
} catch (NumberFormatException ex) {
[Link](null, "Masukkan
angka yang valid.", "Error", jOptionPane.ERROR_MESSAGE);
[Link](); // Kembali meminta
fokus ke panjangField
}
}

private void
prosesButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
cariLuas();
}

private void
prosesButtonKeyPressed([Link] evt) {
// TODO add your handling code here:
if ([Link]() == 0x0A) {
cariLuas(); // Ganti ini dengan fungsi atau kode
yang ingin Anda jalankan saat tombol Enter ditekan
}
}

private void
kembaliButtonFocusGained([Link] evt) {
// TODO add your handling code here:
kosongkanInput();
[Link](false);
}

private void
kembaliButtonMouseClicked([Link] evt) {
// TODO add your handling code here:
}
private void
bersihButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
kosongkanInput();
}

private void
lebarFieldFocusGained([Link] evt) {
// TODO add your handling code here:
// try {
// // Lakukan pemeriksaan apakah nilai yang
dimasukkan adalah numerik
// [Link]([Link]());
// } catch (NumberFormatException ex) {
// [Link](null, "Masukkan
angka yang valid.", "Error", jOptionPane.ERROR_MESSAGE);
// [Link](); // Kembali meminta
fokus ke panjangField
// }
}

private void
prosesButtonFocusGained([Link] evt) {
// TODO add your handling code here:
// try {
// // Lakukan pemeriksaan apakah nilai yang
dimasukkan adalah numerik
// [Link]([Link]());
// } catch (NumberFormatException ex) {
// [Link](null, "Masukkan
angka yang valid.", "Error", jOptionPane.ERROR_MESSAGE);
// [Link](); // Kembali meminta
fokus ke panjangField
// }
}

private void cariLuas() {


try {
double panjang =
[Link]([Link]());
double lebar =
[Link]([Link]());
double luas = panjang * lebar;

// Tampilkan hasil perhitungan luas di area output


(misalnya sebuah JLabel atau JTextArea)
[Link]([Link](luas));
} catch (NumberFormatException ex) {
[Link](null, "Masukkan
angka yang valid.", "Error", jOptionPane.ERROR_MESSAGE);
}
}

private void kosongkanInput() {


[Link]("");
[Link]("");
[Link]("");
}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look
and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not
available, stay with the default look and feel.
* For details see
[Link]
/[Link]
*/
try {
for ([Link] info :
[Link]()) {
if ("Nimbus".equals([Link]())) {

[Link]([Link]());
break;
}
}
} catch (ClassNotFoundException ex) {

[Link]([Link]
e()).log([Link], null, ex);
} catch (InstantiationException ex) {
[Link]([Link]
e()).log([Link], null, ex);
} catch (IllegalAccessException ex) {

[Link]([Link]
e()).log([Link], null, ex);
} catch ([Link]
ex) {

[Link]([Link]
e()).log([Link], null, ex);
}
//</editor-fold>
//</editor-fold>

/* Create and display the form */


[Link](new Runnable() {
public void run() {
new PersegiPanjang().setVisible(true);
}
});
}

// Variables declaration - do not modify


private [Link] bersihButton;
private [Link] jOptionPane;
private [Link] jPanel1;
private [Link] jPanel2;
private [Link] jPanel3;
private [Link] judulLabel;
private [Link] kembaliButton;
private [Link] lebarField;
private [Link] lebarLabel;
private [Link] luasField;
private [Link] luasLabel;
private [Link] panjangField;
private [Link] panjangLabel;
private [Link] prosesButton;
private [Link] selesaiButton;
// End of variables declaration
}
Tampilan :

Output :

Menu Segitiga
Source Code :
/*
* Click
nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-defa
[Link] to change this license
* Click
nbfs://nbhost/SystemFileSystem/Templates/GUIForms/[Link]
to edit this template
*/
package Segitigaku;

import [Link];

/**
*
* @author
* /*
* Anggota 1 : Alif Al Husaini
* NPM : 140810220036
* Anggota 2 : Rio Irawan
* NPM : 140810220084
* Anggota 3 : Angga Prasetyo
* NPM : 140810220086
* Kelas : B
* Tanggal : 19 November 2023
* Deskripsi : Program GUI dengan Java
*/

public class Segitiga extends [Link] {

/**
* Creates new form Segitiga
*/
public Segitiga() {
initComponents();
}

/**
* This method is called from within the constructor to
initialize the form.
* WARNING: Do NOT modify this code. The content of this
method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated
Code">
private void initComponents() {

jOptionPane = new [Link]();


selesaiButton = new [Link]();
kembaliButton = new [Link]();
jPanel1 = new [Link]();
judulLabel = new [Link]();
jPanel2 = new [Link]();
panjangLabel = new [Link]();
tinggiLabel = new [Link]();
panjangField = new [Link]();
tinggiField = new [Link]();
bersihButton = new [Link]();
prosesButton = new [Link]();
jPanel3 = new [Link]();
luasLabel = new [Link]();
luasField = new [Link]();

setDefaultCloseOperation([Link].EXIT_ON_C
LOSE);

[Link](new [Link](102,
102, 255));
[Link]("Selesai");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
selesaiButtonActionPerformed(evt);
}
});

[Link](new [Link](153,
153, 255));
[Link](new [Link](255,
255, 255));
[Link]("Kembali ke Menu");
[Link](new
[Link]() {
public void focusGained([Link]
evt) {
kembaliButtonFocusGained(evt);
}
});
[Link](new
[Link]() {
public void mouseClicked([Link]
evt) {
kembaliButtonMouseClicked(evt);
}
});
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
kembaliButtonActionPerformed(evt);
}
});

[Link](new [Link](204, 204,


255));

[Link](new [Link]("Courier New", 0,


24)); // NOI18N

[Link]([Link].C
ENTER);
[Link]("Segitiga");

[Link] jPanel1Layout = new


[Link](jPanel1);
[Link](jPanel1Layout);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE)
.addComponent(judulLabel,
[Link].PREFERRED_SIZE, 219,
[Link].PREFERRED_SIZE)
.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))
);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addGap(25, 25, 25)
.addComponent(judulLabel)
.addContainerGap(19, Short.MAX_VALUE))
);

[Link](new [Link](204, 255,


255));

[Link]([Link]
(null, "Input",
[Link].DEFAULT_JUSTIFICATION,
[Link].DEFAULT_POSITION, new
[Link]("sansserif", 1, 12))); // NOI18N

[Link]("Panjang Alas :");

[Link]("Tinggi :");

[Link](new
[Link]() {
public void focusLost([Link]
evt) {
panjangFieldFocusLost(evt);
}
});
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
panjangFieldActionPerformed(evt);
}
});

[Link](new
[Link]() {
public void focusGained([Link]
evt) {
tinggiFieldFocusGained(evt);
}
public void focusLost([Link]
evt) {
tinggiFieldFocusLost(evt);
}
});
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
tinggiFieldActionPerformed(evt);
}
});

[Link]("Bersihkan");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
bersihButtonActionPerformed(evt);
}
});

[Link]("Proses");
[Link](new
[Link]() {
public void focusGained([Link]
evt) {
prosesButtonFocusGained(evt);
}
});
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
prosesButtonActionPerformed(evt);
}
});
[Link](new
[Link]() {
public void keyPressed([Link]
evt) {
prosesButtonKeyPressed(evt);
}
});

[Link] jPanel2Layout = new


[Link](jPanel2);
[Link](jPanel2Layout);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addContainerGap()

.addGroup([Link]([Link]
[Link])

.addGroup([Link]()
.addComponent(tinggiLabel,
[Link].PREFERRED_SIZE, 97,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED)
.addComponent(tinggiField,
[Link].PREFERRED_SIZE, 111,
[Link].PREFERRED_SIZE))

.addGroup([Link]()
.addComponent(panjangLabel,
[Link].PREFERRED_SIZE, 97,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED)
.addComponent(panjangField,
[Link].PREFERRED_SIZE, 111,
[Link].PREFERRED_SIZE)))

.addPreferredGap([Link]
LATED, 35, Short.MAX_VALUE)
.addGroup([Link]([Link]
[Link], false)
.addComponent(prosesButton,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(bersihButton,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap(36, Short.MAX_VALUE))
);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addGap(16, 16, 16)

.addGroup([Link]([Link]
[Link])
.addComponent(panjangLabel)
.addComponent(panjangField,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addComponent(prosesButton))
.addGap(12, 12, 12)

.addGroup([Link]([Link]
[Link])
.addComponent(tinggiLabel)
.addComponent(tinggiField,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addComponent(bersihButton))
.addContainerGap(32, Short.MAX_VALUE))
);

[Link](new [Link](204, 255,


255));

[Link]([Link]
(null, "Hasil",
[Link].DEFAULT_JUSTIFICATION,
[Link].DEFAULT_POSITION, new
[Link]("sansserif", 1, 12))); // NOI18N

[Link]("Luas :");

[Link](false);
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
luasFieldActionPerformed(evt);
}
});

[Link] jPanel3Layout = new


[Link](jPanel3);
[Link](jPanel3Layout);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addContainerGap()
.addComponent(luasLabel,
[Link].PREFERRED_SIZE, 97,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED)
.addComponent(luasField,
[Link].PREFERRED_SIZE, 111,
[Link].PREFERRED_SIZE)

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))
);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addGroup([Link]([Link]
[Link])
.addComponent(luasLabel)
.addComponent(luasField,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE))
.addGap(0, 16, Short.MAX_VALUE))
);

[Link] layout = new


[Link](getContentPane());
getContentPane().setLayout(layout);
[Link](

[Link]([Link].L
EADING)

.addGroup([Link],
[Link]()

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE)
.addComponent(kembaliButton,
[Link].PREFERRED_SIZE, 155,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED)
.addComponent(selesaiButton,
[Link].PREFERRED_SIZE, 155,
[Link].PREFERRED_SIZE)

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))
.addComponent(jPanel1,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup([Link]()
.addContainerGap(33, Short.MAX_VALUE)

.addGroup([Link]([Link].A
[Link], false)
.addComponent(jPanel2,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jPanel3,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE))
.addContainerGap(28, Short.MAX_VALUE))
);
[Link](

[Link]([Link].L
EADING)

.addGroup([Link],
[Link]()
.addComponent(jPanel1,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addGap(31, 31, 31)
.addComponent(jPanel2,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED)
.addComponent(jPanel3,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addGap(17, 17, 17)

.addGroup([Link]([Link].A
[Link])
.addComponent(selesaiButton)
.addComponent(kembaliButton))
.addContainerGap())
);

pack();
}// </editor-fold>
private void
selesaiButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
[Link](0);
}

private void
kembaliButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
Menu obj = new Menu();
[Link](true);
dispose();
[Link]();
}

private void
panjangFieldActionPerformed([Link] evt) {
// TODO add your handling code here:
[Link]();
}

private void
tinggiFieldActionPerformed([Link] evt) {
// TODO add your handling code here:
[Link]();
}

private void
luasFieldActionPerformed([Link] evt) {
// TODO add your handling code here:
}

private void
panjangFieldFocusLost([Link] evt) {
// TODO add your handling code here:
try {
// Lakukan pemeriksaan apakah nilai yang
dimasukkan adalah numerik
[Link]([Link]());
} catch (NumberFormatException ex) {
// Tampilkan pesan error jika input tidak valid
[Link](null, "Masukkan
angka yang valid.", "Error", jOptionPane.ERROR_MESSAGE);
[Link](""); // Atur kembali nilai ke
kosong
[Link]();
}
}

private void
tinggiFieldFocusLost([Link] evt) {
// TODO add your handling code here:
try {
// Lakukan pemeriksaan apakah nilai yang
dimasukkan adalah numerik
[Link]([Link]());
} catch (NumberFormatException ex) {
[Link](null, "Masukkan
angka yang valid.", "Error", jOptionPane.ERROR_MESSAGE);
[Link](); // Kembali meminta
fokus ke panjangField
}
}

private void
prosesButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
cariLuas();
}

private void
prosesButtonKeyPressed([Link] evt) {
// TODO add your handling code here:
if ([Link]() == 0x0A) {
cariLuas(); // Ganti ini dengan fungsi atau kode
yang ingin Anda jalankan saat tombol Enter ditekan
}
}

private void
kembaliButtonFocusGained([Link] evt) {
// TODO add your handling code here:
kosongkanInput();
[Link](false);
}
private void
kembaliButtonMouseClicked([Link] evt) {
// TODO add your handling code here:
kosongkanInput();
}

private void
bersihButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
kosongkanInput();
}

private void
tinggiFieldFocusGained([Link] evt) {
// TODO add your handling code here:
// try {
// // Lakukan pemeriksaan apakah nilai yang
dimasukkan adalah numerik
// [Link]([Link]());
// } catch (NumberFormatException ex) {
// [Link](null, "Masukkan
angka yang valid.", "Error", jOptionPane.ERROR_MESSAGE);
// [Link](); // Kembali meminta
fokus ke panjangField
// }
}

private void
prosesButtonFocusGained([Link] evt) {
// TODO add your handling code here:
// try {
// // Lakukan pemeriksaan apakah nilai yang
dimasukkan adalah numerik
// [Link]([Link]());
// } catch (NumberFormatException ex) {
// [Link](null, "Masukkan
angka yang valid.", "Error", jOptionPane.ERROR_MESSAGE);
// [Link](); // Kembali meminta
fokus ke panjangField
// }
}

private void cariLuas() {


try {
double alas =
[Link]([Link]());
double tinggi =
[Link]([Link]());

double luas = 0.5 * alas * tinggi;

// Tampilkan hasil perhitungan luas di area output


(misalnya sebuah JLabel atau JTextArea)
[Link]([Link](luas));
} catch (NumberFormatException ex) {
[Link](null, "Masukkan
angka yang valid.", "Error", jOptionPane.ERROR_MESSAGE);
[Link]();
}
}

private void kosongkanInput() {


// Set nilai bidang input ke nilai default (misalnya,
0.0)
[Link]("");
[Link]("");
[Link]("");
}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look
and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not
available, stay with the default look and feel.
* For details see
[Link]
/[Link]
*/
try {
for ([Link] info :
[Link]()) {
if ("Nimbus".equals([Link]())) {

[Link]([Link]());
break;
}
}
} catch (ClassNotFoundException ex) {

[Link]([Link]()).l
og([Link], null, ex);
} catch (InstantiationException ex) {

[Link]([Link]()).l
og([Link], null, ex);
} catch (IllegalAccessException ex) {

[Link]([Link]()).l
og([Link], null, ex);
} catch ([Link]
ex) {

[Link]([Link]()).l
og([Link], null, ex);
}
//</editor-fold>

/* Create and display the form */


[Link](new Runnable() {
public void run() {
new Segitiga().setVisible(true);
}
});
}

// Variables declaration - do not modify


private [Link] bersihButton;
private [Link] jOptionPane;
private [Link] jPanel1;
private [Link] jPanel2;
private [Link] jPanel3;
private [Link] judulLabel;
private [Link] kembaliButton;
private [Link] luasField;
private [Link] luasLabel;
private [Link] panjangField;
private [Link] panjangLabel;
private [Link] prosesButton;
private [Link] selesaiButton;
private [Link] tinggiField;
private [Link] tinggiLabel;
// End of variables declaration
}

Tampilan :

Output :
Program Menu Persegi Panjang dan Segitiga
Source Code :
/*
* Click
nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-defa
[Link] to change this license
* Click
nbfs://nbhost/SystemFileSystem/Templates/GUIForms/[Link]
to edit this template
*/
package Menuku;

import [Link];
import [Link];

/**
*
* @author
* /*
* Anggota 1 : Alif Al Husaini
* NPM : 140810220036
* Anggota 2 : Rio Irawan
* NPM : 140810220084
* Anggota 3 : Angga Prasetyo
* NPM : 140810220086
* Kelas : B
* Tanggal : 19 November 2023
* Deskripsi : Program GUI dengan Java
*/
public class Menu extends [Link] {

/**
* Creates new form Menu
*/
public Menu() {
initComponents();
}

/**
* This method is called from within the constructor to
initialize the form.
* WARNING: Do NOT modify this code. The content of this
method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated
Code">
private void initComponents() {

jPanel1 = new [Link]();


judulLabel1 = new [Link]();
judulLabel2 = new [Link]();
anggotaPanel = new [Link]();
jLabel1 = new [Link]();
jLabel2 = new [Link]();
jLabel3 = new [Link]();
jLabel4 = new [Link]();
pilihPanel = new [Link]();
segitigaButton = new [Link]();
persegiButton = new [Link]();
selesaiButton = new [Link]();

setDefaultCloseOperation([Link].EXIT_ON_C
LOSE);
setBackground(new [Link](255, 255, 255));
[Link](new [Link](204, 204,
255));

[Link](new [Link]("Courier New",


1, 24)); // NOI18N

[Link]([Link].
CENTER);
[Link]("Selamat Datang Di Program ");

[Link](new [Link]("Courier New",


0, 14)); // NOI18N

[Link]([Link].
CENTER);
[Link]("Luas Persegi dan Segitiga");

[Link] jPanel1Layout = new


[Link](jPanel1);
[Link](jPanel1Layout);
[Link](

[Link]([Link]
[Link])
.addGroup([Link]()
.addContainerGap(34, Short.MAX_VALUE)
.addComponent(judulLabel1)
.addContainerGap(35, Short.MAX_VALUE))
.addGroup([Link]()

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE)
.addComponent(judulLabel2,
[Link].PREFERRED_SIZE, 295,
[Link].PREFERRED_SIZE)

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))
);
[Link](

[Link]([Link]
[Link])
.addGroup([Link],
[Link]()
.addGap(29, 29, 29)
.addComponent(judulLabel1)

.addPreferredGap([Link]
LATED)
.addComponent(judulLabel2)
.addContainerGap())
);

[Link](new [Link](204,
255, 255));

[Link]([Link]
order(null, "Anggota", [Link],
[Link].DEFAULT_POSITION, new
[Link]("Arial", 0, 14))); // NOI18N

[Link]("Alif Al Husaini - 140810220036");

[Link]("Rio Irawan - 140810220084");

[Link]("Angga Prasetyo - 140810220086");

[Link] anggotaPanelLayout = new


[Link](anggotaPanel);
[Link](anggotaPanelLayout);
[Link](

[Link]([Link]
.[Link])

.addGroup([Link]()
.addContainerGap(150, Short.MAX_VALUE)
.addComponent(jLabel1,
[Link].PREFERRED_SIZE, 201,
[Link].PREFERRED_SIZE)

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))

.addGroup([Link]()
.addContainerGap()

.addGroup([Link]([Link].G
[Link])
.addComponent(jLabel2,
[Link].PREFERRED_SIZE, 201,
[Link].PREFERRED_SIZE)
.addComponent(jLabel3,
[Link].PREFERRED_SIZE, 201,
[Link].PREFERRED_SIZE)
.addComponent(jLabel4,
[Link].PREFERRED_SIZE, 201,
[Link].PREFERRED_SIZE))

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))
);
[Link](

[Link]([Link]
.[Link])

.addGroup([Link]()
.addComponent(jLabel1)

.addPreferredGap([Link]
LATED, 10, Short.MAX_VALUE)
.addComponent(jLabel2)

.addPreferredGap([Link]
LATED)
.addComponent(jLabel3)

.addPreferredGap([Link]
LATED)
.addComponent(jLabel4)
.addContainerGap())
);

[Link](new [Link](204, 255,


255));

[Link]([Link]
der(null, "Silakan Pilih Menu",
[Link],
[Link].DEFAULT_POSITION, new
[Link]("sansserif", 1, 14))); // NOI18N
[Link](new [Link](51, 51,
51));

[Link]("Cari Luas Segitiga");


[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
segitigaButtonActionPerformed(evt);
}
});
[Link](new
[Link]() {
public void keyPressed([Link]
evt) {
segitigaButtonKeyPressed(evt);
}
});

[Link]("Cari Luas Persegi Panjang");


[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
persegiButtonActionPerformed(evt);
}
});
[Link](new
[Link]() {
public void keyPressed([Link]
evt) {
persegiButtonKeyPressed(evt);
}
});

[Link] pilihPanelLayout = new


[Link](pilihPanel);
[Link](pilihPanelLayout);
[Link](
[Link]([Link].A
[Link])

.addGroup([Link],
[Link]()
.addContainerGap()
.addComponent(persegiButton,
[Link].PREFERRED_SIZE, 169,
[Link].PREFERRED_SIZE)

.addPreferredGap([Link]
LATED)
.addComponent(segitigaButton,
[Link].DEFAULT_SIZE, 171, Short.MAX_VALUE)
.addContainerGap())
);
[Link](

[Link]([Link].A
[Link])
.addGroup([Link]()
.addGap(23, 23, 23)

.addGroup([Link]([Link]
[Link])
.addComponent(segitigaButton,
[Link].PREFERRED_SIZE, 31,
[Link].PREFERRED_SIZE)
.addComponent(persegiButton,
[Link].PREFERRED_SIZE, 31,
[Link].PREFERRED_SIZE))

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))
);

[Link]("Selesai");
[Link](new
[Link]() {
public void
actionPerformed([Link] evt) {
selesaiButtonActionPerformed(evt);
}
});

[Link] layout = new


[Link](getContentPane());
getContentPane().setLayout(layout);
[Link](

[Link]([Link].L
EADING)
.addComponent(jPanel1,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup([Link]()

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE)

.addGroup([Link]([Link].A
[Link])
.addComponent(selesaiButton,
[Link].PREFERRED_SIZE, 128,
[Link].PREFERRED_SIZE)

.addGroup([Link]([Link].A
[Link], false)
.addComponent(anggotaPanel,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(pilihPanel,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)))

.addContainerGap([Link].DEFAULT_SIZE,
Short.MAX_VALUE))
);
[Link](

[Link]([Link].L
EADING)
.addGroup([Link]()
.addComponent(jPanel1,
[Link].DEFAULT_SIZE,
[Link].DEFAULT_SIZE, Short.MAX_VALUE)
.addGap(33, 33, 33)
.addComponent(anggotaPanel,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addGap(8, 8, 8)
.addComponent(pilihPanel,
[Link].PREFERRED_SIZE,
[Link].DEFAULT_SIZE,
[Link].PREFERRED_SIZE)
.addGap(32, 32, 32)
.addComponent(selesaiButton)
.addGap(20, 20, 20))
);

pack();
}// </editor-fold>

private void
segitigaButtonActionPerformed([Link] evt)
{
// TODO add your handling code here:
Segitiga obj = new Segitiga();
[Link](true);
dispose();
}

private void
selesaiButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
[Link](0);
}

private void
persegiButtonActionPerformed([Link] evt) {
// TODO add your handling code here:
PersegiPanjang obj = new PersegiPanjang();
[Link](true);
dispose();
}

private void
persegiButtonKeyPressed([Link] evt) {
// TODO add your handling code here:
if ([Link]() == 39) { // 39 adalah nilai ASCII
untuk tombol panah kanan (0x27)
[Link]();

}
if ([Link]() == 10) { // 10 adalah nilai ASCII
untuk tombol Enter (0x0A)
PersegiPanjang obj = new PersegiPanjang();
[Link](true);
dispose();
}

private void
segitigaButtonKeyPressed([Link] evt) {
// TODO add your handling code here:
if ([Link]() == 37) { // 37 adalah nilai ASCII
untuk tombol panah kiri (0x25)
[Link]();
}
if ([Link]() == 10) { // 10 adalah nilai ASCII
untuk tombol Enter (0x0A)
Segitiga obj = new Segitiga();
[Link](true);
dispose();
}
}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look
and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not
available, stay with the default look and feel.
* For details see
[Link]
/[Link]
*/
try {
for ([Link] info :
[Link]()) {
if ("Nimbus".equals([Link]())) {

[Link]([Link]());
break;
}
}
} catch (ClassNotFoundException ex) {

[Link]([Link]()).log(j
[Link], null, ex);
} catch (InstantiationException ex) {

[Link]([Link]()).log(j
[Link], null, ex);
} catch (IllegalAccessException ex) {

[Link]([Link]()).log(j
[Link], null, ex);
} catch ([Link]
ex) {

[Link]([Link]()).log(j
[Link], null, ex);
}
//</editor-fold>

/* Create and display the form */


[Link](new Runnable() {
public void run() {
new Menu().setVisible(true);
}
});
}

// Variables declaration - do not modify


private [Link] anggotaPanel;
private [Link] jLabel1;
private [Link] jLabel2;
private [Link] jLabel3;
private [Link] jLabel4;
private [Link] jPanel1;
private [Link] judulLabel1;
private [Link] judulLabel2;
private [Link] persegiButton;
private [Link] pilihPanel;
private [Link] segitigaButton;
private [Link] selesaiButton;
// End of variables declaration
}

Tampilan :

Output :

You might also like