12 Mayıs 2016 Perşembe

jTable ve Table Model Kullanımı

Merhaba, swing kütüphanesinde en çok kullanılacak araçlardan biride jtable.
jtable yi en çok veri tabanından verileri göstermek istediğimizde kullanıyoruz.
Kullanımı jcombobox a benzerdir.
2 Tane dizimiz gerekiyor kullanmak için. 
Birinci dizi tek boyutlu bu table nin satırlarını tutuyor.
İkinci dizi ise 2 boyutlu buda table nin verilerini tutuyor.
Bu iki diziyi TableModel e ekliyoruz. 
Eklenen TableModeli de [table ismi].setModel([model ismi]) diyerek tablemize aktarıyoruz.
Önemli Not : Eğer table yi scrollPane nin içine eklemezsek satırlar gözükmez.
//Kodlar
//jTableKullanimi Sınıfı
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
public class jTableKullanimi extends JFrame {
    private JPanel contentPane;
    private JTable table;
    /**
     * Launch the application.
     */
    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                try {
                    jTableKullanimi frame = new jTableKullanimi();
                    frame.setVisible(true);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }
    /**
     * Create the frame.
     */
    public jTableKullanimi() {
        setTitle(“JTable Kullanlanımı”);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setBounds(100, 100, 450, 300);
        contentPane = new JPanel();
        contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
        setContentPane(contentPane);
        contentPane.setLayout(null);
        
        JScrollPane scrollPane = new JScrollPane();
        scrollPane.setBounds(28, 28, 396, 173);
        contentPane.add(scrollPane);
        
        table = new JTable();
        scrollPane.setViewportView(table);
        
        //—–
        
        //Comboboxta olduğu gibi burdada bir model oluşturuyoruz.
        //Fakat comboboxtan farklı olarak 2 adet dizi alıyor.
        //ilk dizi 1 boyutlu dizi bu dizi Table nin sütün adları
        //ikinci dizi 2 boyutlu olacak bu dizi Table nin satırlarını alıcaktır.
        
        String []ilkdizi=new String[3];
        ilkdizi[0]=“No”;
        ilkdizi[1]=“İsim”;
        ilkdizi[2]=“Soyisim”;
        
        String [][]ikincidizi=new String[4][3];
        ikincidizi[0][0]=“10”;
        ikincidizi[0][1]=“sultan”;
        ikincidizi[0][2]=“şen”;
        
        ikincidizi[1][0]=“20”;
        ikincidizi[1][1]=“seher”;
        ikincidizi[1][2]=“Nahırcı;
        
        ikincidizi[2][0]=“55”;
        ikincidizi[2][1]=“zeliha”;
        ikincidizi[2][2]=“şen”;
        
        ikincidizi[3][0]=“30”;
        ikincidizi[3][1]=“zehra”;
        ikincidizi[3][2]=“şen”;
        
        //Dizileri model kısmına aktarıyoruz.
        TableModel tablemodel=new DefaultTableModel(ikincidizi,ilkdizi);
        
        //Modelide Table aktarıyoruz.
        table.setModel(tablemodel);
        //—–
    }
}

Hiç yorum yok:

Yorum Gönder