<<Mahasiswa is hard>>
Bagi kalian yang sedang pusing cari source code program java yang berbasis GUI, ni, aku ada source codenya, dan ini program menghitung gaji, tapi bisa di edit jadi program yang lainnya (ngeditnya gag ngasal, kudu pakek logika bray -_-),. nih langsung gua kasih. pelajari dengan baik ya sahabat dan cari tutorial terkait dengan si GUI ini.
program utama.
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Prak.PL;
import java.awt.*;
import java.awt.event.*;
import java.util.Date;
/**
*
* @author Acer
*/
public class PerhitunganGaji extends Frame{
Label lbJudul,lbTahunMasuk,lbJabatan,lbGajiPokok,lbBonus,lbTunjangan,lbTotalGaji;
static Checkbox cbStaff,cbManager,cbDirektur;
static TextField txtTahunMasuk,txtGajiPokok,txtBonus,txtTunjangan,txtTotalGaji;
Button btnHitung;
CheckboxGroup Cbg;
public PerhitunganGaji(){
setLayout(null);
lbJudul = new Label("Perhitungan Gaji");
lbJudul.setFont(new Font("Times new rowman", 1, 14));
add(lbJudul);
lbJudul.setBounds(100, 30, 170, 20);
lbTahunMasuk = new Label("Tahun Masuk (2 digit) :");
add(lbTahunMasuk);
lbTahunMasuk.setBounds(100, 60, 62, 20);
lbJabatan = new Label ("Jabatan :");
add(lbJabatan);
lbJabatan.setBounds(100, 90, 70, 20);
lbGajiPokok = new Label("Gaji Pokok :");
add(lbGajiPokok);
lbGajiPokok.setBounds(100, 120, 70, 20);
lbBonus = new Label("Bonus :");
add(lbBonus);
lbBonus.setBounds(100, 150, 70, 20);
lbTunjangan= new Label("Tunjangan :");
add(lbTunjangan);
lbTunjangan.setBounds(100, 180, 70, 20);
lbTotalGaji= new Label("Total Gaji :");
add(lbTotalGaji);
lbTotalGaji.setBounds(100, 210, 70, 20);
Cbg = new CheckboxGroup();
cbStaff= new Checkbox("Staff", Cbg, false);
this.add(cbStaff).setBounds(50, 93, 45, 13);
cbManager = new Checkbox("Manager", Cbg, false);
this.add(cbManager).setBounds(50, 113, 66, 13);
cbDirektur = new Checkbox("Direktur", Cbg, false);
this.add(cbDirektur).setBounds(50, 133, 60, 13);
cbStaff.addItemListener(new mainAction());
cbManager.addItemListener(new mainAction());
cbDirektur.addItemListener(new mainAction());
txtTahunMasuk = new TextField("0");
add(txtTahunMasuk);
txtTahunMasuk.setBounds(200, 60, 60, 20);
txtGajiPokok= new TextField("0");
add(txtGajiPokok);
txtGajiPokok.setBounds(200, 120, 60, 20);
txtBonus = new TextField("0");
add(txtBonus);
txtBonus.setBounds(200, 150, 60, 20);
txtTunjangan= new TextField("0");
add(txtTunjangan);
txtTunjangan.setBounds(200, 180, 60, 20);
txtTotalGaji= new TextField("0");
add(txtTotalGaji);
txtTotalGaji.setBounds(200, 210, 60, 20);
btnHitung = new Button("Hitung");
add(btnHitung);
btnHitung.setBounds(200, 240, 60, 20);
btnHitung.addActionListener(new mainAction());
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
private static class mainAction implements ItemListener, ActionListener {
public void itemStateChanged(ItemEvent ev) {
Date today = new Date();
int tahunMasuk = Integer.parseInt(txtTahunMasuk.getText());
int lama_kerja = today.getYear() - tahunMasuk;
int Gaji_PokokStaff = 1000000;
int Gaji_PokokManager = 5000000;
int Gaji_PokokDirektur = 10000000;
double Bonus=0, tunjangan=0;
Object source = ev.getItemSelectable();
if (source == cbStaff) {
txtTotalGaji.setText("0");
txtGajiPokok.setText(String.valueOf(Gaji_PokokStaff));
if (lama_kerja < 1) {
Bonus = 0;
} else if (lama_kerja >= 1 && lama_kerja <= 10) {
Bonus = 5 / 100.0 * Gaji_PokokStaff;
} else if (lama_kerja > 10) {
Bonus = lama_kerja / 100.0 * Gaji_PokokStaff;
}
txtBonus.setText(String.valueOf((int)Bonus));
tunjangan = 0;
txtTunjangan.setText(String.valueOf((int)tunjangan));
}
if (source == cbManager) {
txtTotalGaji.setText("0");
txtGajiPokok.setText(String.valueOf(Gaji_PokokManager));
Bonus = (5 / 100.0 + ((lama_kerja / 100.0)) * Gaji_PokokManager);
txtBonus.setText(String.valueOf((int)Bonus));
tunjangan = 5 / 100.0 * Gaji_PokokManager;
txtTunjangan.setText(String.valueOf((int)tunjangan));
}
if (source == cbDirektur) {
txtTotalGaji.setText("0");
txtGajiPokok.setText(String.valueOf(Gaji_PokokDirektur));
Bonus = (10 / 100.0 + ((lama_kerja / 100.0)) * Gaji_PokokDirektur);
txtBonus.setText(String.valueOf((int)Bonus));
tunjangan = 10 / 100.0 * Gaji_PokokDirektur;
txtTunjangan.setText(String.valueOf((int)tunjangan));
}
}
public void actionPerformed(ActionEvent event) {
int p1 = Integer.parseInt(txtGajiPokok.getText().trim());
int l1 = Integer.parseInt(txtBonus.getText().trim());
int k1 = Integer.parseInt(txtTunjangan.getText().trim());
String hasil = String.valueOf(p1 + l1 + k1);
txtTotalGaji.setText(hasil);
}
}
}
program pendukung (main dari program utama)
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Prak.PL;
/**
*
* @author Acer
*/
public class PerhitunganGajiDemo {
public static void main(String args[])
{
HitungGaji2 window = new HitungGaji2();
window.setTitle("Perhitungan Gaji");
window.setSize(300,350);
window.show();
}}
nah itu semua adalah source codenya, semoga bermanfaat bagi pembaca dan sahabat bloogger semua. sampai ketemu di lain kesempatan.
science is the capital and learning is the process to obtain the capital
kok ora paham . . .
BalasHapusKomentar ini telah dihapus oleh pengarang.
BalasHapusitu memang program java, machine language lebih tepatnya itu, jdi butuh aplikasi buat nempatin tu sourcode biar bisa run..... :)
BalasHapuslha aplikasine opo ngnu wi?????
BalasHapus