Jumat, 07 Januari 2011

Manajemen Layout (2)


TUGAS PRAKTIKUM

PEMROGRAMAN JAVA II

MANAJEMEN LAYOUT

Disusun oleh :

D. Wahyu Baswara Seta

123080043 / Plug 10

Asisten / Coas :

Shiddieqy Y.Katili / Dimas A.

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INDUSTRI

UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN” YOGYAKARTA

2010

BAB I

TUGAS

1. MultiLayout

import java.awt.*;

import javax.swing.*;

class pMultiLayout extends JFrame{

JButton b1,b2,b3,b4,b5,b6,b7;

JLabel lbl;

public pMultiLayout(){

super("MultiLayout");

setSize(400, 400);

setDefaultCloseOperation(3);

b1=new JButton("B1");

b2=new JButton("B2");

b3=new JButton("B3");

b4=new JButton("B4");

b5=new JButton("B5");

b6=new JButton("B6");

b7=new JButton("B7");

lbl=new JLabel(new ImageIcon("src/Image/1.jpg"));

JPanel p=new JPanel();

add(p,"North");

p.setLayout(new BorderLayout());

p.add(b1,"West");

p.add(b2,"Center");

p.add(b3,"East");

JPanel p1=new JPanel();

add(p1,"East");

p1.setLayout(new BorderLayout());

p1.add(lbl,"Center");

p1.add(b6,"East");

setVisible(true);

JPanel p2=new JPanel();

add(p2,"West");

p2.setLayout(new GridLayout(2,1));

p2.add(b4);

p2.add(b5);

JPanel p3=new JPanel(new BorderLayout());

add(p3,"South");

p3.add(b7);

pack();

}

public static void main(String[] args) {

new pMultiLayout();

}

}

Ouput :


Penjelasan :

import java.awt.*; //untuk fungsi layout

import javax.swing.*;//untuk fungsi seperti Jpanel,Jlabel dll

class pMultiLayout extends JFrame{// kelas

JButton b1,b2,b3,b4,b5,b6,b7; //pendeklarasian button

JLabel lbl; // pendeklarasian label

public pMultiLayout(){//method

super("MultiLayout");//menampilkan judul

setSize(400, 400);//mengatur ukuran frame (lebar,tinggi)

setDefaultCloseOperation(3);//menutup frame

b1=new JButton("B1");//pengistansiasi komponen

b2=new JButton("B2");

b3=new JButton("B3");

b4=new JButton("B4");

b5=new JButton("B5");

b6=new JButton("B6");

b7=new JButton("B7");

lbl=new JLabel(new ImageIcon("src/Image/1.jpg"));//pengistansiasi komponen label dengan menampilkan gambar

JPanel p=new JPanel();//mengistansiasi komponen JPanel

add(p,"North");//menambahkan panel dengan nama p di sebelah utara

p.setLayout(new BorderLayout());//menambahkan borderLayout pada panel

p.add(b1,"West");//menambahkan b1 di sebelah barat panel

p.add(b2,"Center");// menambahkan b2 di tengah panel

p.add(b3,"East");// menambahkan b3 di sebelah timur panel

JPanel p1=new JPanel();//mengistansiasi komponen Jpanel 1

add(p1,"East");// menambahkan panel1 dengan nama p1 di sebelah timur

p1.setLayout(new BorderLayout());//menambahkan borderLayout padapanel

p1.add(lbl,"Center");// menambahkan lbl (gambar) di tengah panel1

p1.add(b6,"East");//menambahkan b6 di sebelah timur layout

setVisible(true);//menampilkan frame

JPanel p2=new JPanel();//mengistansiasi komponen Jpanel 2

add(p2,"West");//menambahkan panel2 dengan nama p2 di barat

p2.setLayout(new GridLayout(2,1));// menambahkan gridLayout padapanel

p2.add(b4);//menambahkan b4 pada panel2

p2.add(b5);

JPanel p3=new JPanel(new BorderLayout());//menambahkan borderLayout padapanel3

add(p3,"South");//Borderlayout diletakkan di sebelah selatan

p3.add(b7);//menambahkan b7 pada b3

pack();//mengatur ukuran panel secara otomatis

}

public static void main(String[] args) { //metod main

new pMultiLayout(); //objek yang digunakan untuk memanggil construktor

}}

2. GridBagLayout

import java.awt.*;

import javax.swing.*;

class GLayout extends JFrame {

JButton bt1, bt2, bt3, bt4, bt5, bt6, bt7, bt8, bt9, bt10, bt11;

JPanel pn1, pn2, p3;

GridBagLayout layout;

BorderLayout border;

GridBagConstraints constraint;//u ngantur kmponen layout gridbag

public GLayout() {

initPref(); // metod

bt1 = new JButton("B1");

bt2 = new JButton("B2");

bt3 = new JButton("B3");

bt4 = new JButton("B4");

bt5 = new JButton("B5");

bt6 = new JButton("B6");

bt7 = new JButton("B7");

bt8 = new JButton("B8");

bt9 = new JButton("B9");

bt10 = new JButton("B10");

bt11 = new JButton("B11");

pn1 = new JPanel();

pn2 = new JPanel();

//border = new BorderLayout();

layout = new GridBagLayout();

constraint = new GridBagConstraints();

constraint.insets = new Insets(5, 5, 5, 5); // mngtur jarak antar kmponen

constraint.fill = GridBagConstraints.BOTH; // mengisi

setLayout(layout);

addkomponen(bt1, 0, 0, 1, 1, 0, 0);

addkomponen(bt2, 0, 1, 1, 1, 0, 0);

addkomponen(bt3, 0, 2, 1, 1, 0, 0);

addkomponen(bt4, 1, 0, 2, 3, 50,0);

addkomponen(bt5, 3, 0, 1, 1, 0, 0);

addkomponen(bt6, 3, 1, 1, 2, 0, 0);

addkomponen(bt7, 0, 3, 5, 1, 0, 0);

addkomponen(bt8, 0, 4, 1, 1, 0, 0);

addkomponen(bt9, 1, 4, 1, 1, 0, 0);

addkomponen(bt10, 2, 4, 1, 1,0, 0);

addkomponen(bt11, 3, 4, 1, 1,0, 0);

}

public void addkomponen(JComponent comp, int kolom, int baris, int lebar, int tinggi, int lebarmanual, int tinggimanual) {

constraint.gridx = kolom;

constraint.gridy = baris;

constraint.gridwidth = lebar;

constraint.gridheight = tinggi;

constraint.ipadx = lebarmanual;

constraint.ipady = tinggimanual;

layout.setConstraints(comp, constraint);

add(comp);

}

private void initPref() {

setTitle("GridBagLayout");

setDefaultCloseOperation(EXIT_ON_CLOSE);

setVisible(true);

setSize(300,250);

}

}

public class GridbagLayout {

public static void main(String[] args) {

new GLayout();

}

}

Output :

Penjelasan :

import java.awt.*;

import javax.swing.*;

class GLayout extends JFrame {//merupakan suatu kelas

JButton bt1, bt2, bt3, bt4, bt5, bt6, bt7, bt8, bt9, bt10, bt11;

JPanel pn1, pn2, p3;

GridBagLayout layout;// pendeklarasian GridBaglayout dg nama layout

BorderLayout border; // pendeklarasian borderlayout dg nama border

GridBagConstraints constraint;//untuk mengantur komponen layout

public GLayout() { // constructor

initPref(); // metod

bt1 = new JButton("B1");

bt2 = new JButton("B2");

bt3 = new JButton("B3");

bt4 = new JButton("B4");

bt5 = new JButton("B5");

bt6 = new JButton("B6");

bt7 = new JButton("B7");

bt8 = new JButton("B8");

bt9 = new JButton("B9");

bt10 = new JButton("B10");

bt11 = new JButton("B11");

pn1 = new JPanel();

pn2 = new JPanel();

layout = new GridBagLayout(); //instansiasi objek

constraint = new GridBagConstraints();

constraint.insets = new Insets(5, 5, 5, 5); // mengatur jarak antar komponen

constraint.fill = GridBagConstraints.BOTH; // mengisikomponen

setLayout(layout);

addkomponen(bt1, 0, 0, 1, 1, 0, 0);//menambahkan komponen bt1 dan sekaligus mengatur letak berdasarka posisi (kolom,baris,lebar,tinggi,lebar manual,tinggi manual).

addkomponen(bt2, 0, 1, 1, 1, 0, 0);

addkomponen(bt3, 0, 2, 1, 1, 0, 0);

addkomponen(bt4, 1, 0, 2, 3, 50,0);

addkomponen(bt5, 3, 0, 1, 1, 0, 0);

addkomponen(bt6, 3, 1, 1, 2, 0, 0);

addkomponen(bt7, 0, 3, 5, 1, 0, 0);

addkomponen(bt8, 0, 4, 1, 1, 0, 0);

addkomponen(bt9, 1, 4, 1, 1, 0, 0);

addkomponen(bt10, 2, 4, 1, 1,0, 0);

addkomponen(bt11, 3, 4, 1, 1,0, 0);

}

public void addkomponen(JComponent comp, int kolom, int baris, int lebar, int tinggi, int lebarmanual, int tinggimanual) {//metod

constraint.gridx = kolom; //mengatur kolom

constraint.gridy = baris;//mengatur baris

constraint.gridwidth = lebar;// mengatur lebar

constraint.gridheight = tinggi;//mengatur tinggi

constraint.ipadx = lebarmanual;// mengatur lebar manual

constraint.ipady = tinggimanual;// mengatur tinggi manual

layout.setConstraints(comp, constraint);//mengatur layout secara keseluruhan

add(comp);//menambhkan komponen

}

private void initPref() { //metod

setTitle("GridBagLayout");//menampilkan judul layout

setDefaultCloseOperation(EXIT_ON_CLOSE);//menutup frame

setVisible(true);//(menampilkan frame)

setSize(300,250);//mengatur ukuran frame

}}

public class GridbagLayout {//kelas

public static void main(String[] args) { // metod main

new GLayout();//objek yang memanggil kelas

}}

EVENT HANDLING (1)

TUGAS PRAKTIKUM

PEMROGRAMAN JAVA II

EVENT HANDLING

Oleh :

D. Wahyu Baswara Seta.

123080043

Asisten / Coas :

Shiddieqy Y.Katili / Dimas A.

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INDUSTRI

UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN” YOGYAKARTA

2010

TUGAS

1. Login

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.FocusEvent;

import java.awt.event.FocusListener;

import java.awt.event.KeyEvent;

import java.awt.event.KeyListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JPasswordField;

import javax.swing.JTextField;

class login extends JFrame{

public JLabel luser,lpass;

public JTextField tuser;

public JPasswordField tpass;

public JButton bok,bcancel;

public login(){ // construktor

luser = new JLabel("user") ;

lpass = new JLabel("Password");

tuser = new JTextField(10);

tpass = new JPasswordField(10);

bok = new JButton("OK");

bcancel = new JButton ("CANCEL");

setLayout(new GridLayout(3,2));

add(luser);

add(tuser);

add(lpass);

add(tpass);

add(bok);

add(bcancel);

tuser.addKeyListener(new KeyListener() {

public void keyTyped(KeyEvent ke) {

}

public void keyPressed(KeyEvent ke) {

if(ke.getKeyChar()==KeyEvent.VK_ENTER){

tpass.requestFocus();

}

}

public void keyReleased(KeyEvent ke) {

}

});

tuser.addFocusListener(new FocusListener() {

public void focusGained(FocusEvent fe) {

//mengaktifkan/noaktifkan objek

}

public void focusLost(FocusEvent fe) {

tuser.setEnabled(false);

}

});

bok.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent ae) {

String user =" ";

String pass ="";

user = tuser.getText();

pass = tpass.getText();

if(user.equalsIgnoreCase("123")&&pass.equalsIgnoreCase("java2")){

JOptionPane.showMessageDialog(null,"Login Sukses","Pesan",JOptionPane.OK_OPTION);

new MenuUtama();

dispose();

}else{

JOptionPane.showMessageDialog(null,"Login Gagal,user" +tuser.getText()+"Tidak terdaftar", "Pesan",JOptionPane.ERROR_MESSAGE);

tuser.setEnabled(true);

tuser.requestFocus();

tpass.setEnabled(true);

tuser.setText(" ");

tpass.setText("");

}

}

});

setDefaultCloseOperation(3);

setSize(300,150);

setVisible(true);

setTitle("Login");

}

}

public class plogin{

public static void main(String[] args) {

new login();

}

}

Output :

Penjelasan :

import java.awt.GridLayout; // untuk fungsi layout

import java.awt.event.ActionEvent;//untuk fungsi event

import java.awt.event.ActionListener;//fungsi event

import java.awt.event.FocusEvent;// untuk fungsi event

import java.awt.event.FocusListener; // untuk fungsi event

import java.awt.event.KeyEvent; // untuk fungsi event

import java.awt.event.KeyListener; // untuk fungsi event

import javax.swing.JButton; //untuk fungsi Button

import javax.swing.JFrame; //untuk fungsi frame

import javax.swing.JLabel;//untuk fungsi label

import javax.swing.JOptionPane; // untuk fungsi option

import javax.swing.JPasswordField; // untuk fungsi password

import javax.swing.JTextField; // untuk fungsi text

class login extends JFrame{ // kelas

public JLabel luser,lpass;//deklarasi JLabel

public JTextField tuser;//deklarasi JTextField

public JPasswordField tpass;//deklarasi JPassword

public JButton bok,bcancel;//deklarasi JButton

public login(){ // construktor

luser = new JLabel("user"); // instansiasi label user

lpass = new JLabel("Password");// instansiasi label password

tuser = new JTextField(10); // instansiasi textfield user

tpass = new JPasswordField(10); // instansiasi textfield password

bok = new JButton("OK");// instansiasi button ok

bcancel = new JButton ("CANCEL");// instansiasi button cancel

setLayout(new GridLayout(3,2));// mengatur gridlayout

add(luser);//menambahkan label user pada layout

add(tuser);//menambahkan textfield user

add(lpass);//menambahkan label pass

add(tpass);// menambahkan textfield pass

add(bok); // menambahkan button ok

add(bcancel); // menambahkan button cancel

tuser.addKeyListener(new KeyListener() {

public void keyTyped(KeyEvent ke) { //method

}

public void keyPressed(KeyEvent ke) {//method

if(ke.getKeyChar()==KeyEvent.VK_ENTER)

tpass.requestFocus();

}

}

public void keyReleased(KeyEvent ke) {

}

});

tuser.addFocusListener(new FocusListener() {

public void focusGained(FocusEvent fe) {

//mengaktifkan/noaktifkan objek

}

public void focusLost(FocusEvent fe) {

tuser.setEnabled(false);

}

});

bok.addActionListener(new ActionListener() {//menambahkb actionlistener pada button ok

public void actionPerformed(ActionEvent ae) {

String user =" ";

String pass ="";

user = tuser.getText();//mengambil nilai char pada user

pass = tpass.getText();//mengambil nilai char pada password

if(user.equalsIgnoreCase("123")&&pass.equalsIgnoreCase("java2")){ //username berisi 123 dan paswaord berisi java2

JOptionPane.showMessageDialog(null,"Login Sukses","Pesan",JOptionPane.OK_OPTION);//

new MenuUtama();//membuka menu utama

dispose();//befungsi untuk balik ke semula

}else{

JOptionPane.showMessageDialog(null,"Login Gagal,user" +tuser.getText()+"Tidak terdaftar", "Pesan",JOptionPane.ERROR_MESSAGE);//login gagal maka keluar pesan login gagal (user yang dimasukkan ) tidak terdaftar

tuser.setEnabled(true);

tuser.requestFocus();

tpass.setEnabled(true);

tuser.setText(" ");

tpass.setText("");

}

}

});

setDefaultCloseOperation(3);

setSize(300,150);//mengatur ukuran output

setVisible(true);//

setTitle("Login");

}

}

public class plogin{//kelas

public static void main(String[] args) {//method main

new login();//objek yg memanggil kelas

}

}


2. Mouse

import java.awt.event.MouseEvent;

import java.awt.event.MouseMotionListener;

import javax.swing.JFrame;

import javax.swing.JScrollPane;

import javax.swing.JTextArea;

class Main extends JFrame implements MouseMotionListener{


JScrollPane sb;

JTextArea jt;

String text="";


public Main() {

setTitle("Mouse Motion Listener");


jt=new JTextArea();

sb=new JScrollPane();

sb.setViewportView(jt);


jt.setFont(new java.awt.Font("DejaVu Sans", 3, 16));


setLayout(null);

//sb.add(jt);

add(sb);


sb.setBounds(300,75, 260, 270);


setSize(600, 400);

setVisible(true);

setDefaultCloseOperation(3);

addMouseMotionListener(this);

}

public void mouseDragged(MouseEvent me) {

throw new UnsupportedOperationException("Not supported yet.");

}


public void mouseMoved(MouseEvent me) {

try{

text=text+ "\nPosisi Mouse x: "+getMousePosition().x+", y: "+getMousePosition().y;

jt.setText(text);}catch(Exception e){


}

}


public static void main(String[] args) {

new Main();

}

}

output -->

Selasa, 14 Desember 2010

DNS SERVER

DNS Server atau Domain Name System Adalah sebuah aplikasi service di internet yang menerjemahkan sebuah domain name ke IP address dan salah satu jenis system yang melayani permintaan pemetaan IP address ke FQPN (Fany Qualified Domain Name) dan dari FQDN ke IP address.

Bind9 adalah sebuah aplikasi untuk implementasi dari konsep DNS Server yang paling banyak digunakan saat ini.

Membangun DNS Server Menggunakan Bind9

Untuk membangun DNS Server, kali ini saya menggunakan Bind9. Berikut ini langkah-langkahnya :

Software yang akan kita gunakan adalah BIND9. Untuk mengetahui apakah BIND telah terinstal

pada komputer kita, kita dapat mengeceknya dengan mengetikkan perintah :

1. Instalasi

Cek DNS Utils : sudo dpkg -l | grep dnsutils

2. Konfigurasi

Setelah BIND9 terinstall pada komputer kita, kemudian kita akan mengkonfigurasinya.

Berikut langkah-langkah pengkonfigurasiannya :

1. Copy dahulu host dengan cara mengetik perintah :

sudo cp /etc/bind/named.conf.local /etc/bind/named.conf.local.BACKUP

2. Cek hasil pengcopian tadi dengan cara :

sudo ls /etc/bind

3. Kemudian Edit named.conf.local tersebut dengan cara :

sudo nano /etc/bind/named.conf.local

tambahkan dibawah baris "//include...." listing baru :

zone "wahyu.com"{

type master;

file "/etc/bind/db.wahyu.com";

}

save dengan cara CTRL+x

4. Copy database

sudo cp /etc/bind/db.local /etc/bind/db.wahyu.com

5. Cek hasil pengcopian tadi dengan cara :

sudo ls /etc/bind

6. Kemudian Edit db.wahyu.com tersebut dengan cara :

sudo nano /etc/bind/db.wahyu.com

Ganti semua kata "Localhost" yang ada dengan kata "wahyu.com"

Ganti IP sesuai IP masing-masing(192.168.133.53)

save dengan cara CTRL+x

7. Kemudian edit kembali named.conf.local

sudo nano /etc/bind/named.conf.local

tambahkan dibawah baris listing lagi :

zone "133.168.192.in-addr.arpa"{

type master;

notify no;

file "/etc/bind/db.192";

};

8. Copy database Localhost (IP 127)

sudo cp /etc/bind/db.127 /etc/bind/db.192

Cek dengan : sudo ls /etc/bind

9. Kemudian edit kembali db.192

sudo nano /etc/bind/db.192

Pada Listing tersebut ganti kata "localhost" dengan "wahyu.com" (pada baris SOA, NS, PTR)

Pada baris PTR,

(angka awal menunjukkan akhiran alamat IP), ex: 192.168.133.53 -> 53 (menjadi awalan pada baris tersebut)

10. Restart BIND9 dengan cara :

sudo /etc/init.d/bind9 restart

11. Kemudian edit resolv.conf

sudo nano /etc/resolv.conf

Ganti IP(Name Server) dengan IP masing-masing

Save dengan CTRL+x

12. Restart Network-Manager

sudo /etc/init.d/network-manager restart

13. Ping Web kita lewat Mozilla Firefox (Ketikkan "wahyu.com" di Mozilla)

14. berakhir/selesai