Jul 012009
 
Combo OpenSwing

Combo OpenSwing

Dalam pembuatan program dengan menggunakan java terutama bagi teman – teman yang sedang explorasi dengan OpenSwing , begitu banyak komponen yang di tawarkan oleh OpenSwing mulai dari grid, textbox dan yang lain – lain.

Pada kali ini saya akan membahas tentang bagaimana cara menggunakan ComboBoxVOControl yang berguna untuk menampilkan combo yang berisi data dari database.

Untuk langkah awal buatlah sebuah table datalam database kamu. disini saya menggunakan Ms Acces, semisal kita membuat table seperti di bawha ini.

Nama Table = tblMaster

dengan Field = kode (text[2]), nama(text[20]), jumlah(number).

Kemudian buat project di Netbeans. buat package entity dan buat class entity ketik coding di bawah ini :

/*

* Desain by Sugik Puja Kusuma
* email   : sugik@do-event.com
* website : http://www.sugik.do-event.com
* ===============================================================
*     Semua sorce dalam program ini dibawah license [GPL]
*     Silakan Untuk mengembangkan dan memperbanyak source ini
*     Dengan tidak menghilangkan nama pembuat
* ===============================================================
*/

package mbahsomocombo.entity;

import org.openswing.swing.message.receive.java.ValueObjectImpl;

/**
*
* @author mbahsomo
*/
public class Master extends ValueObjectImpl{
private String kode, nama;
private int jumlah;

public Master() {
}

public int getJumlah() {
return jumlah;
}

public String getKode() {
return kode;
}

public String getNama() {
return nama;
}

public void setJumlah(int jumlah) {
this.jumlah = jumlah;
}

public void setKode(String kode) {
this.kode = kode;
}

public void setNama(String nama) {
this.nama = nama;
}

}

Nama File : Master.java

Setelah membuat entity buat desain Displaynya dengan form control dan sebuah ComboBoxVOControl setelah membuat desain display. buat datalocator untuk load data ke combo. buat package baru dengan nama locator dan ketik source di bawah ini

/*
* Desain by Sugik Puja Kusuma
* email   : sugik@do-event.com
* website : http://www.sugik.do-event.com
* ===============================================================
*     Semua sorce dalam program ini dibawah license [GPL]
*     Silakan Untuk mengembangkan dan memperbanyak source ini
*     Dengan tidak menghilangkan nama pembuat
* ===============================================================
*/

package mbahsomocombo.locator;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import mbahsomocombo.entity.Master;
import org.openswing.swing.items.client.ItemsDataLocator;
import org.openswing.swing.message.receive.java.ErrorResponse;
import org.openswing.swing.message.receive.java.Response;
import org.openswing.swing.message.receive.java.VOListResponse;

/**
*
* @author mbahsomo
*/
public class MasterDataLocator extends ItemsDataLocator{
private Connection conn = null;

public MasterDataLocator(Connection conn) {
this.conn=conn;
}

@Override
public Response loadData(Class arg0) {
PreparedStatement stmt = null;
try {
String sql="select * from tblMaster";

stmt = conn.prepareStatement(sql);

ResultSet rset = stmt.executeQuery();
ArrayList list = new ArrayList();
while (rset.next()) {
Master vo = new Master();
vo.setKode(rset.getString(1));
vo.setNama(rset.getString(2));
vo.setJumlah(rset.getInt(3));
list.add(vo);
}
return new VOListResponse(list, false, list.size());
}catch (SQLException ex) {
ex.printStackTrace();
return new ErrorResponse(ex.getMessage());
}finally {
try {
stmt.close();
}catch (SQLException ex1) {}
}
}

}

Nama File : MasterDataLocator.java

kemudian isikan code di bawah ini ke dalam display yang telah anda buat.

MasterDataLocator masterDataLocator = new MasterDataLocator(conn);
cboKode.setComboDataLocator(masterDataLocator);
cboKode.setComboValueObjectClassName(“mbahsomocombo.entity.Master”);
cboKode.setAllColumnVisible(true);

Source di atas digunakan untuk memanggil datalocator yang kita buat, dengan asumsi nama ComboBoxVOControl adalah cboKode.

Ok sampai disini dulu.

Untuk dapat download source silakan ddownload disini :

Binary

Source

Facebook Comments

  12 Responses to “Using ComboBoxVOControl OpenSwing”

  1. bro, gimana kalau mau mengambil nilai salah satu field itu

  2. @andi
    miasl
    codLookupControl.getValue()

  3. saya coba pakai getvalue, tp hasilnya bukan field itu

  4. codLookupControl2.getValue().toString()
    di kompi saya bisa dengan hasil seperti ini
    http://img163.imageshack.us/img163/5895/ambilnilai.gif

  5. String combo3;
    combo3 = cboKode.getValue().toString();
    System.out.println(combo3);

    saya coba seperti itu
    keluarnya
    Exception in thread “AWT-EventQueue-0” java.lang.NullPointerException

    padahal disitu ada 3 record, kira2 apa ya pak penyebabnya sampai error seperti itu

    maaf bertanya trus

  6. atau coba kirim projectnya ke saya saja
    mbahsomo[at]gmail[dot]com

  7. andi wrote:

    String combo3;
    combo3 = cboKode.getValue().toString();
    System.out.println(combo3);
    saya coba seperti itu
    keluarnya
    Exception in thread “AWT-EventQueue-0? java.lang.NullPointerException
    padahal disitu ada 3 record, kira2 apa ya pak penyebabnya sampai error seperti itu
    maaf bertanya trus

    Mungkin ada setingan yang kurang coba tambahin seperti ini :
    cboKode.setForeignKeyAttributeName(“kode”);
    cboKode.addCombo2ParentLink(“kode”,”kode”);
    ok Semoga membantu

  8. Hey mate, thanks 4 sharing but this article doesn’t format correctly in Safari it is showing only half the page.

  9. I was just doing some web browsing on my iPhone during my break at work , and I came across something I thought was intriguing. It linked over to your website so I clicked over. I can’t really figure out the relevance between your site and the one I came from, but your site good none the less .

  10. Thanks for writing about a very relevant topic. Most tenderfoot entrepreneurs nowadays promote and offer and sell whatever they can without even having a concrete idea of what things to prioritize. Keep them coming!

  11. What is password?

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

(required)

(required)