1. 程式人生 > >Swing基本元件使用4(JTable)

Swing基本元件使用4(JTable)

JTable(表格)

表格由兩部份組成:分別是行標題(Column Header)與行物件(Column Object).利用JTable所提供的getTableHeader()方法取得行標題。在這個例子中,我們將JTable放在 JScrollPane中,這種做法可以將Column Header與Colmn Object完整的顯示出來,因為JScrollPane會自動取得Column Header

        JFrame jf = new JFrame();

        jf.setSize(600, 600);

        //居中對齊

        jf.setLocationRelativeTo(null

);

        //這是表格資料模型需要傳入的表格資料

        String[] colNames = {"姓名","性別","年齡","電話"};

        String[][] data = {

            {"a1","男","11","1223656778"},

            {"a2","男","22","2314234"},

            {"a3","女","33","435634576367"},

            {"a4","男","44","8796789"},

            {"a5",

"女","55","23454527246"},

        };

        A.自定義的表格資料模型

//        TableModel myModel = new MyTableModel();

//        TableModel myModel = new MyTableModelV2(colNames, data);

        B.系統預設的表格資料模型

//        DefaultTableModel myModel = new DefaultTableModel(data, colNames);

//如果要能看到table的表頭,那麼  必須將 table 放到

        //JScrollPane中!!!

 //       JTable table = new JTable(myModel);

        C.用JTable的構造方法直接初始化模型資料

        JTable table = new JTable(data, colNames);

        table.getTableHeader().setResizingAllowed(false);//拉伸表格長度

   table.getColumnModel().getcolumn(3).setCellEditor(new DefaultCellEditor(comboBox));//給            第三列單元格新增下拉框(comboBox)

        JScrollPane jsp = new JScrollPane(table);

        jf.add(jsp);

        jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        jf.setVisible(true);

效果圖片展示如下: