Membuat Kalkulator dengan Java Oleh: Eko Wicaksono
Ini merupakan program kalkulator sederhana
Kali ini saya ingin membuat tutor dari bahasa java, belajar membuat kalkulator namanya. Ini program masih sangat sederhana. baiklah langsung saja ke proses pengodingan. Langkah Pertama : 1. 2. 3. 4. 5.
Buka Netbeans (jika memakai Netbeans) File New Project --> Java --> Java Application Lalu Next saja Buat nama packages hello atau terserah, dan nama kelas hello.java Finish
Berikut ini adalah kode program beserta penjelasannya yang akan kita kerjakan. /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package hello; import import import import import import import import
java.awt.EventQueue; java.awt.event.ActionEvent; java.awt.event.ActionListener; javax.swing.JButton; javax.swing.JFrame; javax.swing.JOptionPane; javax.swing.JPanel; javax.swing.JTextField;
Penjelasan : ●
Import maksudnya adalah kata kunci untuk melibatkan kelas-kelas lain yang akan terhimpun dalam package dalam import
/** * * @author ASUS
*/ public class Hello extends JFrame{ /** * @param args the command line arguments */ private JPanel pane; private JButton plus; private JButton min; private JButton kali; private JButton bagi; private JTextField angka1; private JTextField angka2; private JTextField hsl; Penjelasan : ●
Private sendiri maksudnya adalah data dan method hanya dapat diakses di dalam kelas miliknya saja
public Hello(){ super ("Kalkulator"); memberi nama pada window setSize(300, 200); memberi ukuran dari panel setLocationRelativeTo(null); menentukan lokasi tengah dari panel setDefaultCloseOperation(EXIT_ON_CLOSE);
//kode ini untuk //kode ini berguna untuk //kode ini untuk
Penjelasan : super("Kalkulator") --> Maksudnya adalah untuk pemanggilan constructor namun juga bisa sebagai Title dari window program setSize(300, 200); --> Artinya adalah untuk memberikan ukuran panel yang digunakan untuk menampung seperti JTextField, JButton, dan sebagainya setLocationRelativeTo(null); --> Maksudnya adalah untuk menentukan lokasi awal dimulainya program berjalan berada ditengah (null) setDefaultCloseOperation(EXIT_ON_CLOSE); --> Maksudnya adalah untuk mensetting agar program tertutup semua jika tombol close di tekan
pane = new JPanel();
//kode ini maksudnya untuk membuat panel
baru ke dalam jendela program setContentPane(pane); pane.setLayout(null); plus = new JButton("+"); baru yaitu + plus.setBounds(10, 100, 50, 20); pane.add(plus);
//ini untuk menambahkan button //menentukan ukuran dari button //menambahkan ke dalam panel
Penjelasan : pane = new JPanel(); --> Artinya mendeklarasikan pane sebagai JPanel baru setContentPane(pane); --> Maksudnya adalah untuk membuat konten baru pada pane pane.setLayout(null); --> Kode program untuk menentukan letak atau posisi dari pane
plus = new JButton("+"); --> Kode program untuk mendeklarasikan JButton baru untuk plus plus.setBounds(10,100,50,20); --> Kode untuk menentukan letak dan ukuran dari JButton plus pane.add(plus); --> Kode untuk menambahkan plus kedalam pane
plus.addActionListener(new ActionListener() { //dan kode diatas ini untuk menambahkan aksi kedalam button, agar button dapat melakukan aksi penjumlahan @Override public void actionPerformed(ActionEvent e) { int ang1 = Integer.parseInt(angka1.getText()); untuk mendeklarasikan variabel ang1 tipe int int ang2 = Integer.parseInt(angka2.getText()); int hasil = ang1 + ang2; untuk proses penjumlahannya hsl.setText(String.valueOf(hasil)); untuk menaruh hasil penjumlahannya
//nah ini
//yg ini //kalo ini
} }); Penjelasan : plus.addActionListener(new ActionListener() { --> Kode ini untuk menambahkan aksi kedalam JButton plus public void actionPerformedIActionEvent e) { --> Kode ini adalah untuk menentukan aksi dari
program tersebut int ang1 = Integer.parseInt(angka1.getText()); --> Kode ini fungsinya untuk Mendeklarasikan ang1 dengan tipe data int dan digunakan untuk memasukkan sebagai text di JTextField int ang2 = Integer.parseInt(angka1.getText()); --> Kode ini fungsinya untuk Mendeklarasikan ang2 dengan tipe data int dan digunakan untuk memasukkan sebagai text di JTextField int hasil = ang1 + ang2; --> Artinya adalah untuk mendeklarasikan hasil dengan tipe data int dan menjumlahkan antara ang1 dan ang2 hsl.setText(String.valueOf(hasil)); --> Nah kode ini untuk menaruh variabel hasil kedalam hsl sebagai hasil dari penjumlahannya
min = new JButton("-"); min.setBounds(65, 100, 50, 20); pane.add(min); min.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { int ang11 = Integer.parseInt(angka1.getText()); int ang21 = Integer.parseInt(angka2.getText()); int hasil1 = ang11 - ang21; hsl.setText(String.valueOf(hasil1)); } }); Penjelasan : min = new JButton("-"); --> Kode ini untuk mendeklarasikan JButton baru dengan nama min int hasil1 = ang11 - ang21; --> Kode ini untuk melekukan aksi pengurangan dalam program nah selebihnya penjelasan tidak jauh berbeda dengan yang dijelaskan diatas, hanya saja berbeda variablenya
kali = new JButton("*"); kali.setBounds(120, 100, 50, 20); pane.add(kali);
kali.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { int ang112 = Integer.parseInt(angka1.getText()); int ang212 = Integer.parseInt(angka2.getText()); int hasil12 = ang112 * ang212; hsl.setText(String.valueOf(hasil12)); } }); Penjelasan : kali = new JButton("*"); --> Kode untuk mendeklarasikan JButton baru dengan nama kali int hasil12 = ang112 * ang212; --> Kode ini untuk menghitung perkalian dalam program Sisanya kurang lebih sama dengan penjelasan diatas. hanya berbeda variable saja
bagi = new JButton("%"); bagi.setBounds(175, 100, 50, 20); pane.add(bagi); bagi.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { int ang113 = Integer.parseInt(angka1.getText()); int ang213 = Integer.parseInt(angka2.getText()); int hasil13 = ang113 / ang213; hsl.setText(String.valueOf(hasil13)); } }); Penjelasan : bagi = new JButton('%"); --> Kode ini maksudnya untuk mendeklarasikan bagi sebagai JButton untuk pembagian int hasil13 = ang113 / ang213; --> Kode ini untuk melakukan aksi pembagiab dalam program java Selebihnya penjelasan hampir sama seperti program pertama yaitu program plus, hanya saja berbeda variable
angka1 = new JTextField(); angka1.setBounds(10, 10, 100, 20); pane.add(angka1); angka2 = new JTextField(); angka2.setBounds(10, 40, 100, 20); pane.add(angka2); hsl = new JTextField(); hsl.setBounds(10, 70, 100, 20); pane.add(hsl); } angka1 = new JTextField(); --> Maksudnya adalah mendeklarasikan angka1 sebagai JTexrFIeld baru angka1.setBounds(10,10,100,20); --> Artinya adalah menentukan posisi serta ukuran dari JTextField angka1, dimulai dari pojok kiri atas dengan sumbu x=10, sumbu y=10, dan ukuran lebar=100, tinggi=20 Kode dibawahnya hampir sama penjelasannya hanya berbeda varible saja
public static void main(String[] args) { EventQueue.invokeLater(new Runnable() {
| |
@Override | public void run() { | try { |Semua Kode ini dgunakan untuk menjalankan program berbentuk JFrame Hello fr = new Hello(); | fr.setVisible(true); | } catch (Exception e) { | e.printStackTrace(); | } } }); } } Penjelasan : public static void main (String[] args) { --> Ini merupakan kode yang harus ada dalam pemrograman bahasa java, karena tanpa kode ini maka program tidak akan mau berjalan. Karena fungsi main dimana public pada bagian ini method-method bisa dipanggil dari dalam maupun luar kelas. Hello fr = new Hello(); --> Kode dimana ini merupakan kelas yang akan berjalan setelah kode diatas
dibuat semua fr.setVisible(true); --> Kode ini merupakan Default dari window apakah nampak sampai setVisible(true)
Demikianlah Tutorial ini, mohon maaf jika masih ada kekurangan. Terimakasih :)
Tentang Penulis Eko Wicaksono