Friday, 17 June 2016

GUI (Grapical User Interface) contoh program java JFrame menampilkan nilai Akhir


JFrame merupakan komponen dasar dalam membuat aplikasi GUI, dimana JFrame berfungsi sebagai container atau wadah untuk menampung komponen GUI lainya.

#Konstruktor:
~JFrame()
~JFrame(String judul)
~JFrame(String judul, GraphicsConfiguration gc)

#Beberapa metode:
~setTitle(string judul);
~setSize(int lebar, int tinggi);
~setLOcation(int x, int y);
~setDefaultCloseOperation(int);
~setVisible(boolean tampil);


contoh program JFrame

import javax.swing.*;
import java.awt.event.*;

public class jframe extends JFrame{

public jframe(){
initComponents();
}

private void initComponents(){
setTitle("luas persegi panjang");
setSize(500, 400);
setDefaultCloseOperation(EXIT_ON_CLOSE);

panel = new JPanel();

namaLabel = new JLabel("Nama");
utsLabel = new JLabel("");
uasLabel = new JLabel("Nilai Uas");
akhirLabel = new JLabel("Nilai Akhir");

namaTextField= new JTextField();
utsTextField = new JTextField();
uasTextField = new JTextField();
akhirTextField = new JTextField();

hitungButton = new JButton("Hitung");
tutupButton = new JButton("Tutup");

panel.setLayout(null);
getContentPane().add(panel);

panel.add(namaLabel);
panel.add(utsLabel);
panel.add(uasLabel);
panel.add(akhirLabel);

panel.add(namaTextField);
panel.add(utsTextField);
panel.add(uasTextField);
panel.add(akhirTextField);

panel.add(hitungButton);
panel.add(tutupButton);

namaLabel.setBounds(30,30,90,25);
utsLabel.setBounds(30,60,90,25);
uasLabel.setBounds(30,90,90,25);
akhirLabel.setBounds(30,120,90,25);

namaTextField.setBounds(130,30,100,25);
utsTextField.setBounds(130,60,100,25);
uasTextField.setBounds(130,90,100,25);
akhirTextField.setBounds(130,120,100,25);

hitungButton.setBounds(40,180,100,30);
tutupButton.setBounds(150,180,80,30);

akhirTextField.setEditable(false);

hitungButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
hitungButtonActionPerformed(evt);
}
});

tutupButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
tutupButtonActionPerformed(evt);
}
});
}

private void hitungButtonActionPerformed(ActionEvent evt){
double uts=0, uas=0, akhir;

try{
uts=Double.parseDouble(utsTextField.getText());
}catch (NumberFormatException ex){
JOptionPane.showMessageDialog(this, "Nilai UTS yang di masukan salah");
}

try{
uas = Double.parseDouble(uasTextField.getText());
} catch (NumberFormatException ex){
JOptionPane.showMessageDialog(this, "Nilai uas yang dimasukan salah");
}

akhir = (0.4*uts) + (0.6*uas);

akhirTextField.setText(Double.toString(akhir));
}

private void tutupButtonActionPerformed(ActionEvent evt){
System.exit(0);
}

public static void main(String[] args){
new menghitungnilai().setVisible(true);
}

private JPanel panel;

private JLabel namaLabel;
private JLabel utsLabel;
private JLabel uasLabel;
private JLabel akhirLabel;

private JTextField namaTextField;
private JTextField utsTextField;
private JTextField uasTextField;
private JTextField akhirTextField;

private JButton hitungButton;
private JButton tutupButton;
}


script di atas kemudian kita tulis kedalam notepad++, kemudian kita save dengan nama class pada program di atas yaitu  jframe, setelah itu lakukan pemanggilan file melalui CMD dengan cara win+R --> cmd<enter> kemudian cari lokasi penyimpanan file yang anda ketikan tadi, disini saya menyimpan pada : D:\MATERI KULIAH\semseter4\pemrograman 1\materi02\new<enter>,kemudian ketikan javac<spasi> jframe .java setelah itu, ketikan  java<spasi>jframe<enter>

maka output progam seperti di bawah ini: