Selasa, 24 Februari 2009

Extrim Swing Makeover-Sebuah Perubahan besar dalam UI Design

Perubahan dramatis terjadi dalam membuat User interface. jika dulu kita masih membuat user interface standar kayak yang satu ini:



Sekarang kayaknya dah ga cukup. ya memang konsep ini udah ada cukup lama. tapi yah kadang bagi para newbie info ini juga cukup penting. yang mudah mudahan aja bisa ngasih inspirasi. contoh form hasil Extrim Makeover:

Halaman Utama


Dialog Box


entar lain kali dibahas deh cara buatnya :).
read more...

Rabu, 11 Februari 2009

Tutorial: Pembuatan Aplikasi MySQL Viewer dengan Netbeans

Halooo semuanaya...... ini Tutorialku yang pertama.

Idenya adalah mempbuat Aplikasi MysqlViewer (Kayak PHPMyqdmin, Ato MySQL Administrator). Ya lumayan lah buat latihan dan memperdalam Skil dibidang Java Programing.

Download Tutorial: MySQLViewer.pdf
Download SourceCode Penyerta+MySQL Conector: SourceCode

ScreenShoot:











Semoga Bermanfaat -------
read more...

Senin, 09 Februari 2009

Cara termudah membuat JTabel langsung databse kedalam di Java. (Versi Netbeans)

Membuat Tabel dalam Java emang gampang-gampang gampang, he. Ya daripada harus dibuat susah, mending digampang-gampangin.

Untuk membuat table di java sebenarnya gampang, langkah yang mesti dilakukan sebagai berikut:

  • Buat Model Tabelnya, buat sebuah Class, kemudian Extend-kan AbstractTableModel. (bisa juga sih meggunakan DefaultTableModel)
  • Buat table baru dengan Model yang kita Buat.

Ex.
JTable table=new JTable(model);
Atau
JTable table=new JTable();
Table.setModel(model );


Kalau pake Netbeans malah lebih gampang lagi tinggal buat Project, buat Sebuah JFrame, masukan JTable Atur Modelnya di pallete Properties.Tapi masalahnya adalah ketika kita ingin memmbuat sebuah program yang dinamis (kita ingin field ini ada, field itu gak ada, dll), dan kita berurusan dengan berpuluh-puluh script query yang mesti di exsekusi dan ditampilkan hasilnya di dalam JTabel, hayoo Gimana tuh, pasti repot .

Tapi tenannnnnng, BlackOntaZone punya solusi jitu untuk mengatasi hal ini.

Ok Siap Boss? Kita mulai

Untuk project ini kita bisa pake Netbeans sebagai alat bantu.


Buka Netbeans dan Buat Project biarkan Set Main Project dan Create Main Class.

Buat Package-package nama_project , nama_project.db, nama_project.ui, seperti gambar dibawah ini:


Kemudian pada Package nama_project.db buat Class baru dengan nama Koneksi dan JDBCModel (Nama Bebas lah).

Kemudian pada Package ui buat Class baru dengan nama TabelView (Nama Bebas Juga lah) Ingatkan untuk selalu memisahkan class sesuai dengan fungsinya didalam Package.

Langkah selanjutnya, Buka Class Koneksi dan beri nama, kemudian ketikan kode berikut:


package jdbctabel.db;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

public class Koneksi {

Connection koneksi;
private String urlDB="jdbc:mysql://localhost/nama_database";
private String username="root";
private String pass="password_mysql";

public Koneksi(){
}
public boolean buatKoneksi(){
try{
Class.forName("org.gjt.mm.mysql.Driver");
koneksi=DriverManager.getConnection(urlDB, username, pass);
}catch(Exception e){
e.printStackTrace();
return false;
}
return true;
}

public Statement getStatemen(){
if(buatKoneksi()){
try{
Statement state=koneksi.createStatement();
return state;
}catch(SQLException e){
e.printStackTrace();
return null;
}
}else return null;
}
}

Langkah kedua, buka Class JDBC Table Kebudian Ketikan kode Berikut di awal Class:

Kemudian Buat Variable judulTabel, dan isiTabel;




Akan ada indicator error di kiri Workspace, klik Implement All Abstract Model.


Ganti code bawaan Netbeans dengan kode berikut:

Kalau sudah, buat Method untuk mengmbil record dari database:

public void buatTabel(String sql){
Statement state=new jdbctabel.db.Koneksi().getStatemen();
try{
ResultSet hasil=state.executeQuery(sql);
ResultSetMetaData meta=hasil.getMetaData();
judulTabel=new String[meta.getColumnCount()];
ArrayList sem=new ArrayList();
for(int i=0; i < meta.getColumnCount();i++){
sem.add(meta.getColumnName(i+1));
}
judulTabel=new String[sem.size()];
sem.toArray(judulTabel);


hasil.last();
isiTabel=new Object[hasil.getRow()][judulTabel.length];
hasil.beforeFirst();
int baris=0;
while(hasil.next()){
for(int i=0;i<judulTabel.length;i++){
isiTabel[baris][i]=hasil.getString(i+1);
}
baris++;
}
}catch(Exception e){
e.printStackTrace();
}
}


Tambahkan method diatas pada bagian constructor class:


Tambahkan lagi sebuah Method untuk meng-override method getColumnName():

@Override

public String getColumnName(int index){

return judulTabel[index];

}


Setelah itu, buat sebuah JFrame kemudian tambahkan sebuah JTable kedalamnya.

Pada property model klik tombol ellipsis kemudian pilih Coostum Code.


Lalu ketikan kode berikut:

new jdbctabel.db.JDBCModel("SELECT * FROM mahasiswa");

Jangan Lupa untuk menambahkan kode ini di Class Main:


Nah nah nah beres deh


Gimana, Gampangkan……

Q: Gampang sih, tapi koq judul kolomnya masih gitu, kan ga lucu kalau judul Kolomnya kayak gitu?? Bagusnya sih no, nama, kota, no_hp nya diganti No, Nama Mahasiswa, Kota Asal, No Handphone, iya kan??? Bisa gak Pik???.

O: O…. tenang za, BlackOntaZone punya tipsnya, supaya judul tabelnya sesuai dengan keinginan kita.

Untuk merubah judul tabelnya supaya sesuai dengan keinginan kita, kita tinggal rubah saja syntax SQL nya, misql untuk kasus diatas jadi kayak gini:

Model Awal:

new jdbctabel.db.JDBCModel("SELECT * FROM mahasiswa");

Rubah Jadi:

new jdbctabel.db.JDBCModel("SELECT no AS No, nama AS “Nama Mahasiswa”, kota AS Kota Asal, no_hp AS “No Handphone” FROM mahasiswa");


Jreng Jreng Jreng, Nama kolomnya berubah (dengan menambahkan Class untuk menyesuaikan Kolom, maka tampilannya jadi lebih enak dilihat).


Coba, trus coba untuk Brekreasi hal ini untuk mengembangkan sebuah aplikasi, siapa tau bisa buat Library sendiri. Enak kan kalo buat table di Java tinggal set Koneksinya, trus tinggal set Querynya Jadi deh.

Download Source Code: JDBC Table

Atau mau yang udah Jadi??? Tunggu aja deh. (Kalau gak sibuk ya or send an email to me on blackonta@gmail.com).

read more...

Rabu, 04 Februari 2009

Merasakan Eclipse Bercitarasa Netbeans

Eclipse merupakan IDE yang powerfull dalam pengembangan perangkat lunak berbasis java. tidak salah banyak sekali orang yang menggunakan Eclipse. namun bagi yang baru mulai mendalami java, menggunakan Eclipse terkadang menyulitkan.

salah satu alasannya adalah, Eclipse tidak mempunyai GUI editor bawaan(GUI editor eclipse ditambahkan belakangan).

Salah satu GUI editor buat Eclipse adalah Visual Editor. Tapi salah satu kelemahannya adalah VE ini rewel saat Instalasi, kadang jalan kadang enggak .

berapa orang diantara temen-temen yang pernah nyobain Eclipse dan berhasil menginstall VE . Ok lah Ga apa-apa.

Tapi kaau temen temen mau coba Eclips tapi pengen yang ada GUI Editornya, Bisa Ko, cobain Jigloo SWT/Swing GUI Builder. Instalasinya Mudah .

Mau Coba?? Gampang Ikuti Cara-cara berikut:
  1. Download Jigloo versi Terbaru (Versi terakhir sampai postingan ini adalah versi 420).
  2. Extract Jigloo ke Directori Eclpse (Pake Winrar atau sejenisnya).
  3. Jalankan.
Apa??? segitu Doang???? .

Yup Gampangkan, Cobaindeh.






Tapiiiiiii..............

Apaan tuh tapinya, Plugins ini Bayar . heheheh

Jangan khawatir, Untuk Coba, Gratis tis tis.

Download, dan coba dulu, yah buat sekedar merasakan kemudahan GUI Editornya Netbeans, biar gak penasaran (Terutama bagi yang ga pernah bisa nginstalin VE heheh)
read more...

Selasa, 03 Februari 2009

Lebih Asik Sharing Source Code, Software, Ebook, Games, dan Semua file Digital Dengan Ziddu

Wooi pa kabar???? ada yang baru nehh dari ziddu!

Yup, ini tentang Ziddu.com tempat saya nitipin file-file digital pelengkap Blog. Apanya yang baru???. Ziddu berubah tampilan. gak tau kapan tepatnya, yang jelas Dua hari yang lalu belum berubah.

Jadi makin asik nitipin file di Ziddu.com, selain dapat tempat buat nitip file, kita juga di bayar lho. he he jualan juga.

Ziddu.com juga jadi alternatif File Sharing yang bagus, karena Ziddu.com tidak menggunakan Counter Waktu, kayak raphidshare.com atau semacamnya.

Lho-lho ada yang belum coba tho. Cobain deh apalagi bagi temen-temen yang punya blog, Dijamin gak rugi deh.

Ya udah ah liat aja sendiri perubahanya ok.

Mau nyobain??? Daftar disini:
read more...

Minggu, 01 Februari 2009

Menyesuaikan Lebar Kolom JTable Secara Manual?, Ga Janji dehh, mending yang Otomatis!!!!

Apa yang paling menyebalkan saat membuat Tabel di Java? Yup menyesuaikan lebar kolom. Secata default, java akan membagi rata lebar tabel dengan jumlah kolom yang ada. Misalnya, terdapat 5 kolom maka lebar setiap kolom akan menjadi 20% dari keseluruhan lebar kolom.
Sebenarnya, Kita dapat menggunakan method:
setPreferredWidth(lebar_kolom);

untuk menyesuaikan kolom, tapi kemudian semua ini akan terasa menyebalkan ketika kita harus mengatur lebar kolom satu per satu untuk setiap kolomnya. Bayangkan jika kita mempunyai 10 tabel dengan banyak kolom didalamnya, yup akan terasa menjengkelkan.


Kenapa tidak kita buat saja class yang dapat mengatur lebar kolom yang otomatis menyesuaikan dengan lebar isi??.


Ok, idenya kayak gini:

Kita akan buat sebuah class yang nantinya class ini akan mempunyai behaviour berikut:
  1. Menghitung jumlah kolom yang ada, dengan mengambil model kolom dengan method getColumnModel();

  2. Class ini akan menghitung lebar maksimal dari isi tabel di tiap kolom, kemudian menjadiknnya sebagai lebar kolom. Misal untuk tabel diatas, class akan mencari isi tabel paling panjang untuk kolom nama, kemudian setelah selesai, maka class akan menjadikannya sebagai lebar dari kolom nama.

Ok, sekarang kita mulai.Pertama, buat sebuah class (namanya terserah), kemudian buat sebuah method di dalamnya,

public void buatKolomSesuai(JTable t){
// isi kolom
}


Kedua, ambil model kolom dari tabel
TableColumnModel modelKolom=t.getColumnModel();


Ketiga, Cari lebar maksimam dari tiap kolom, dan jadikan sebagai lebar kolom dengan method setPreferredWidth(lebar_kolom);


for(int kol=0; kol <>
int lebarKolomMax=0;
for(int baris=0;baris
TableCellRenderer rend=t.getCellRenderer(baris,kol);
Object nilaiTablel=t.getValueAt(baris,kol);
Component comp=rend.getTableCellRendererComponent(t,nilaiTablel,false,false,baris,kol);
lebarKolomMax=Math.max(comp.getPreferredSize().width,lebarKolomMax);
}//akhir for baris
TableColumn kolom=modelKolom.getColumn(kol);
kolom.setPreferredWidth(lebarKolomMax);
}//akhir for kolom
}

Yup, tiga langkah sederhana untuk membuat tabel, dengan lebar kolom yang sudah di sesuaikan.

Berhasil gak neh?

Kita buktikan:
Buat sebuah class untuk menampilkan sebuah tabel. (yang punya Netbeans, pake aja, biar gak pusing bikin tabelnya :)).

Buat sebuah tabel trus isi deh tabelnya dengan data yang temen-temen inginkan. Yup, setelah tabelnya di instansiasi kemudian implementasikan classnya:Nih code lengkapnya:


Jreng-jreng........................... hasilnya:




Selamat mencoba ................................... and keep trying.
read more...