import java.awt.*; import java.awt.event.*; import javax.swing.*; public class KalkulatorUTS_NIM extends JFrame implements ActionListener { private JPanel pKalkulator = new JPanel(); private JTextField fLayar = new JTextField (); private JLabel labelmhs = new JLabel ("NIM : 1231 Nama : ABC"); private JButton btnTambah = new JButton ("+"), btnKurang = new JButton ("-"), btnC = new JButton ("C"), btn1 = new JButton ("1"), btn2 = new JButton ("2"), btn3 = new JButton ("3"), btnSama = new JButton (); private String isiLayar = ""; private String snilai1, snilai2, tombol; private int hasil; public KalkulatorUTS_NIM() { setPreferredSize(new Dimension(500,600)); setTitle("Kalkulator"); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); new BorderLayout(); JDesktopPane pKalkulator = new JDesktopPane(); add(pKalkulator, BorderLayout.CENTER); /* Mengatur letak objek Text Di Container */ fLayar.setBounds (50, 90, 385, 50); labelmhs.setBounds (50, 480, 200, 50); /* Mengatur letak objek Button di Container */ btnTambah.setBounds (350, 160, 85, 50); btnKurang.setBounds (350, 230, 85, 50); btnC.setBounds (350, 300, 85, 50); btnSama.setBounds (250, 230, 85, 50); btnSama.setLabel("="); //btnAdd.setToolTipText("Tombol Tambah Data"); btn1.setBounds (50, 160, 85, 50); btn2.setBounds (150, 160, 85, 50); btn3.setBounds (250, 160, 85, 50); fLayar.setHorizontalAlignment (JTextField.RIGHT); /* Objek Button di Non Aktifkan dan di aktifkan */ btnTambah.setEnabled(true); /* Mengatur objek untuk dapat berinteraksi */ btn1.addActionListener (this); btn2.addActionListener (this); btn3.addActionListener (this); btnTambah.addActionListener (this); btnKurang.addActionListener (this); btnC.addActionListener (this); btnSama.addActionListener (this); // Meletakkan seluruh kontrol pada objek panel */ pKalkulator.add (fLayar); pKalkulator.add (labelmhs); pKalkulator.add (btn1); pKalkulator.add (btn2); pKalkulator.add (btn3); pKalkulator.add (btnTambah); pKalkulator.add (btnKurang); pKalkulator.add (btnC); pKalkulator.add (btnSama); /* Menambahkan objek panel (pKalkulator) ke container frame */ getContentPane().add (pKalkulator).setBackground(Color.getHSBColor(0,0,0)); //(Color.getHSBColor(0,0,0)) silahkan angka 0 di atas diganti dengan 0 s/d 255 //misal (Color.getHSBColor(10,50,200)) /* Menampilkan frame ke layar monitor */ pack(); setVisible (true); } public static void main(String[] args) { new KalkulatorUTS_NIM().setVisible(true); } /* Fungsi jika user melakukan action penekanan tombol Button */ public void actionPerformed (ActionEvent ae) { Object obj = ae.getSource(); if (obj == btnC) { tombol = ""; snilai1 = ""; snilai2 = ""; isiLayar = ""; fLayar.setText(isiLayar); } if (obj == btn1) { isiLayar = isiLayar + "1"; fLayar.setText(isiLayar); } if (obj == btn2) { isiLayar = isiLayar + "2"; fLayar.setText(isiLayar); } if (obj == btn3) { isiLayar = isiLayar + "123"; fLayar.setText(isiLayar); } if (obj == btnTambah) { tombol = "tambah"; snilai1 = fLayar.getText(); isiLayar = ""; fLayar.setText(isiLayar); } if (obj == btnKurang) { tombol = "kurang"; snilai1 = fLayar.getText(); isiLayar = ""; fLayar.setText(isiLayar); } if (obj == btnSama) { snilai2 = fLayar.getText(); if (tombol == "tambah") { hasil = Integer.parseInt(snilai1) + Integer.parseInt(snilai2); } else if (tombol == "kurang") { hasil = Integer.parseInt(snilai1) - Integer.parseInt(snilai2); } String shasil = ""+hasil; fLayar.setText(shasil); } } // Fungsi untuk mengkosongkan Objek masukan void Kosong () { fLayar.setText (""); fLayar.requestFocus (); } }