GUI (Graphical User Interface) merupakan antarmuka pengguna secara grafis. Nah, untuk lebih jelasnya saya mempunyai contoh coding untuk membuat GUI di Java. Let's check it....
GUI (Graphical User Interface) di Java
ü Program 1
import java.awt.*;
public class FrameExample {
private
Frame f;
public FrameExample() {
f = new Frame ("Hello Out There!");
}
public void launchFrame(){
f.setSize(107,170);
f.setBackground(Color.blue);
f.setVisible(true);
}
public static void main (String[] args) {
FrameExample guiWindow = new FrameExample();
guiWindow.launchFrame();
}
}
Analisa
Pada program ini, program menggunakan package awt
dimana pada package ini memiliki beberapa fungsi, salah satu fungsunya yaitu
class frame. Pada program ini membuat sebuah frame dengan ukuran, warna
background dan hak aksesnya ditentukan. Terlihat dari potongan program
f.setSize(107,170);
f.setBackground(Color.blue);
f.setVisible(true);
yang
menjelaskan bahwa ukuran fram adalah (x,y)(107,107) dan background pada frame
adalah berwarna biru.
ü
Program 2
import java.awt.*;
public class FrameWithPanel {
private
Frame f;
public FrameWithPanel() {
f = new Frame("Frame With Panel");
}
public void launchframe(){
f.setSize(200,200);
f.setBackground(Color.blue);
f.setLayout(null); // override daefault layout
mgr
Panel pan = new Panel();
pan.setSize(100,100);
pan.setBackground(Color.yellow);
f.add(pan);
f.setVisible(true);
}
public static void main (String[] args) {
FrameWithPanel guiWindow = new
FrameWithPanel();
guiWindow.launchframe();
}
}
Analisa
program
Pada program ini, program menggunakan class frame dan
class panel. Pada class frame, sama dengan program sebelumnya yaitu ukuran,
warna background dan hak aksesnya ditentukan. Kemudian untuk class panel,
program membuat sebuah konstanta atau variable baru dari calass panel ini
bernama pan.
ü Program 3
import java.awt.*;
public class GraphicPanel extends Panel {
public GraphicPanel () {
setBackground(Color.black);
}
public void paint(Graphics g){
g.setColor(new Color(0,225,0)); //green
g.setFont(new
Font("Helvetica",Font.PLAIN,16));
g.drawString("Hello GUI world!",30,100);
g.setColor(new Color(1.0f,0,0));//red
g.fillRect(30,100,150,10);
}
public static void main (String[] args) {
Frame f = new Frame("testing Graphics
Panel");
GraphicPanel gp = new GraphicPanel();
f.add(gp);
f.setSize(600,300);
f.setVisible(true);
}
}
Analisa
program
Pada
program ini, program menggunakan proses penurunan class dimana class
GraphicPanel di extends ke class Panel
ü
Program 4
import java.awt.*;
public class FrameWControls extends Frame {
public FrameWControls() {
}
public static void main (String[] args) {
FrameWControls
fwc = new FrameWControls();
fwc.setLayout(new
FlowLayout());// more on this later
fwc.setSize(600,600);
fwc.add(new
Button("test me!"));
fwc.add(new
Label("label"));
fwc.add(new
TextField());
CheckboxGroup
cbg = new CheckboxGroup();
fwc.add(new
Checkbox("chk1",cbg,true));
fwc.add(new
Checkbox("chk2",cbg,false));
fwc.add(new
Checkbox("chk3",cbg,false));
List
list = new List(3,false);
list.add("MTV");
list.add("V");
fwc.add(list);
Choice
chooser = new Choice();
chooser.add("Avril");
chooser.add("Monica");
chooser.add("Britney");
fwc.add(chooser);
fwc.add(new
Scrollbar());
fwc.setVisible(true);
}
}
Analisa
program
Pada program ini, program juga menggunakan proses
penurunan class dimana class fram diextends menjadi class FrameWControl. Pada
program ini juga sama dengan program
sebelumnya dimana ukuran frame ditentukan. Pada program ini juga menambahkan
checkboxGroup dan chooser.
ü
Program 5
import java.awt.*;
public class FlowLayoutDemo extends Frame{
public FlowLayoutDemo() {
}
public static void main (String[] args) {
FlowLayoutDemo
fld = new FlowLayoutDemo();
fld.setLayout
(new FlowLayout(FlowLayout.RIGHT, 10,10));
fld.add(new
Button("ONE"));
fld.add(new
Button("TWO"));
fld.add(new
Button("THREE"));
fld.setSize(100,100);
fld.setVisible(true);
}
}
Analisa
program
Pada program ini, sama dengan program
sebelumnya dimana class frame menurunkan class FlowLayoutDemo, dimana program
ini menambahkan icon button.
ü
Tugas flow layout
import java.awt.*;
public class TugasFlowLayout extends Frame{
public TugasFlowLayout() {
}
public static void main(String arg[]){
TugasFlowLayout tfl = new TugasFlowLayout();
tfl.setLayout(new FlowLayout(FlowLayout.RIGHT,
10,10));
tfl.add(new Button("Press me"));
tfl.add(new Button("Don't Press Me
!!"));
tfl.setSize(250, 75);
tfl.setBackground(Color.blue);
tfl.setVisible(true);
}
}
ü
Program 6
import java.awt.*;
public class BorderLayoutDemo extends Frame {
public BorderLayoutDemo() {
}
public
static void main (String[] args) {
BorderLayoutDemo bld = new
BorderLayoutDemo();
bld.setLayout(new BorderLayout(10,10));
bld.add(new
Button("NORTH"),BorderLayout.NORTH);
bld.add(new
Button("SOUTH"),BorderLayout.SOUTH);
bld.add(new
Button("EAST"),BorderLayout.EAST);
bld.add(new
Button("WEST"),BorderLayout.WEST);
bld.add(new Button("CENTER"),BorderLayout.CENTER);
bld.setSize(200,200);
bld.setVisible(true);
}
}
Analisa
program
Pada program ini, sama dengan program sebelumnya yaitu
menambahkan icon button tetapi pada program ini posisi dari button tersebut
ditentukan. Fungsi dari BorderLayout.NORTH adalah menyimpan atau menempatkan
icon button di arah utara.
ü
Program 7
import java.awt.*;
public class ComplexLayout extends Frame {
public ComplexLayout() {
}
public static void main(String args []){
ComplexLayout cl = new ComplexLayout();
Panel panelNorth = new Panel();
Panel panelCenter = new Panel();
Panel panelSouth = new Panel();
panelNorth.add(new Button("ONE"));
panelNorth.add(new Button("TWO"));
panelNorth.add(new Button("THREE"));
panelCenter.setLayout(new GridLayout(4,4));
panelCenter.add(new
TextField("1st"));
panelCenter.add(new
TextField("2nd"));
panelCenter.add(new
TextField("3rd"));
panelCenter.add(new
TextField("4th"));
panelSouth.setLayout(new BorderLayout());
panelSouth.add(new Checkbox("Choose me
!!"),BorderLayout.CENTER);
panelSouth.add(new Checkbox("I'm here
!!!"),BorderLayout.EAST);
panelSouth.add(new Checkbox("Pick me !!!"),BorderLayout.WEST);
cl.add(panelNorth,BorderLayout.NORTH);
cl.add(panelCenter,BorderLayout.CENTER);
cl.add(panelSouth,BorderLayout.SOUTH);
cl.setSize(300,300);
cl.setVisible(true);
}
}
Analisa
program
Pada
program ini, program membuat 3 buah penempatan untuk masing-masing button.
Dimana panelNorth berfungsi untuk menampilkan “one, two, three” dan
panelCenter berfungsi untuk menampilkan “1st, 2nd, 3rd, 4th” dan panelSouth
berfungsi untuk menampilkan pilihan “pick me!!, Choose me !!, dan i’m here !!”.
ü
Tugas Complex Layout
import java.awt.*;
public class TugasComplexLayout extends
Frame{
private
Frame tc;
public TugasComplexLayout() {
tc = new Frame("GUI TC");
}
public void test(){
Panel tcl = new Panel();
Panel tcl1 = new Panel();
tcl.add(new Button("File"));
tcl.add(new Button("Help"));
tcl1.add(new Button("West"));
tcl1.add(new Button("Work Space
Region"));
tc.add(tcl,BorderLayout.NORTH);
tc.add(tcl1,BorderLayout.SOUTH);
tc.setSize(200,100);
tc.setVisible(true);
}
public static void main(String args []){
TugasComplexLayout clt = new
TugasComplexLayout();
clt.test();
}
}
ü
Program 8
import javax.swing.*;
public class MyContainer {
public static void main(String args []) {
JFrame.setDefaultLookAndFeelDecorated(true);
JFrame container = new JFrame("Window
Utama");
container.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
container.setSize(300,100);
container.setLocation(200,200);
container.setVisible(true);
}
}
Analisa
program
Pada program ini, program membuat sebuah tampilan
seperti tampilan pada window, dimana tampilan frame dapat diperbesar dan dapat
juga diperkecil ukurannya serta dapat dikeluarkan dengan megklik tanda close.
ü
Program 9
import java.awt.*;
import javax.swing.*;
public class SwingDemo {
JFrame
frame;
JPanel
panel;
JTextField
textField;
JButton
button;
Container
contentPane;
public SwingDemo() {
}
void launchFrame(){
frame = new JFrame("My First Swing Application");
panel = new JPanel();
textField = new JTextField("Default
text");
button = new JButton("Click me
!!!");
contentPane = frame.getContentPane();
panel.add(textField);
panel.add(button);
contentPane.add(panel,
BorderLayout.CENTER);
frame.pack();
frame.setVisible(true);
}
public static void main(String args[]){
SwingDemo sd = new SwingDemo();
sd.launchFrame();
}
}
Analisa
program
Pada program ini, program menggunakan class awt dan
javax swing. Pada program ini javax.swing banyak digunakan salah satu
penggunaanya yaitu membuat sebuah variable frame dari class Jframe.
ü
Tugas
import java.awt.*;
import javax.swing.*;
class TugasTictactoe extends Frame {
public
TugasTictactoe(){
super("Tic-Tac-Toe");
}
public
static void main(String args[]){
//m6
hanya untuk framenya saja
TugasTictactoe
m6 = new TugasTictactoe();
Panel
panelNorth= new Panel();
panelNorth.add(new
Label("File"));
Panel
panelSouth= new Panel();
panelSouth.add(new
Label("Player Ones' Turn"));
Panel
panelCenter = new Panel();
//menentukan
banyak baris kolom
panelCenter.setLayout(new
GridLayout(3, 3, 2, 2));
panelCenter.add(new
Button(" "));
panelCenter.add(new
Button(" "));
panelCenter.add(new
Button(" "));
panelCenter.add(new
Button(" "));
panelCenter.add(new
Button(" "));
panelCenter.add(new
Button(" "));
panelCenter.add(new
Button(" "));
panelCenter.add(new
Button(" "));
panelCenter.add(new
Button(" "));
m6.add(panelNorth,
BorderLayout.NORTH);
m6.add(panelCenter,
BorderLayout.CENTER);
m6.add(panelSouth,
BorderLayout.SOUTH);
m6.setSize(300,300);
m6.setVisible(true);
}
}
0 Response to "GUI (Graphical User Interface) di Java"
Post a Comment