<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    有才華的人,別忘記給滋潤你的那塊土壤施肥

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      28 隨筆 :: 5 文章 :: 147 評論 :: 0 Trackbacks

            下周完我就工作滿一年啦。回想大部分的時間都被好奇心給占去了,這個組件好玩弄一下,那個好玩也弄一下,最后手里還是什么都沒得,而本身的工作是基于swing,倒是沒花多少精力,最后也是對swing一知半解,今天想研究研究下talbe,卻發現被這么個問題給卡住了。
           是這樣的給TableModel傳入表頭和內容,但是直接將table加到frame中去,table顯示不了表頭如圖1,但是將table放到JScrollPane中去,卻能顯示,如圖2。

           

                                         圖一      
                 
                                 圖二                                                              
        為什么這樣?實在是弄不明白,不知道有那位高手指點下不?
         源碼如下:

    package kissJava.JTable;

    import javax.swing.*;
    import javax.swing.table.*;
    import java.awt.*;
    public class TestSortedTable {
        
    public static void main(String args[]){
            JFrame frame 
    = new JFrame("JTable的header測試");
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            Object rows[][] 
    ={
                    
    "王明""中國"44 },
                    
    "姚明""中國"25 },
                    
    "趙子龍""西蜀"1234 },
                    
    "曹操""北魏"2112 },
                    
    "Bill Gates""美國"45 },
                    
    "Mike""英國"33 } }
    ;
            String columns[] 
    = "姓名""國籍""年齡" };
            TableModel model 
    = new DefaultTableModel(rows, columns);
            JTable table 
    = new JTable(model);
            
            RowSorter
    <TableModel> sorter = new TableRowSorter<TableModel>(model);
            table.setRowSorter(sorter);
            
            JScrollPane pane 
    = new JScrollPane(table);
            frame.add(pane, BorderLayout.CENTER);
    //顯示header        
        
    //    frame.add(table, BorderLayout.CENTER);//不顯示header    
            frame.setSize(300150);
            frame.setVisible(
    true);
      }

    }

    posted on 2008-03-21 12:31 kissjava 閱讀(1019) 評論(6)  編輯  收藏 所屬分類: swing

    評論

    # re: 關于JTable,為何這樣? 2008-03-21 13:52 枯寬
    剛找了下,發現不用JScrollPane的時候,加上frame.getContentPane().add(table.getTableHeader(), BorderLayout.NORTH); 也能顯示header,可swing為什么要這樣???  回復  更多評論
      

    # re: 關于JTable,為何這樣? 2008-03-21 15:42 枯寬
    呼呼。找了jdk。上面說就那樣要么用JScollPane要么add(table.getTableHeader())

    看了源代碼流程是這樣的:
    JTable-->initializeLocalVars()-->setTableHeader(createDefaultTableHeader());

    JTable-->addNotify()-->configureEnclosingScrollPane()-->(JScollPane)setColumnHeaderView(Component view)-->setView(Component view)

    ...............................  回復  更多評論
      

    # re: 關于JTable,為何這樣? 2008-03-21 17:20 林子
    技術高手..小M來捧捧場了.  回復  更多評論
      

    # re: 關于JTable,為何這樣? 2008-03-30 09:38 even
    我也來逛逛, 現在完全聽不懂了。 重新編輯博客更好吧,為什么放在評論里,老江多出手啊!博客就是要經常更新才行,像我家那塊地,已經是死水了,好比政府網站,萬年不變,后來自己都不愿看了,對了,放點自拍啊!  回復  更多評論
      

    # re: 關于JTable,為何這樣? 2009-03-14 15:39 hwl
    @枯寬
    你好!看了你的帖子受益匪淺,我也正有這方面的疑問。
    1.你說你找了jdk,上面說就那樣,要么用jscrollpane要么用add()。我也去找了一下,怎么我沒找到?我用的是Java 2 SE 6 Documentation.是不是我用的jdk不對,我甚至都沒看到有關信息,這還是我在寫代碼時發現的。
    2.你所列的源代碼流程是怎樣弄到的,是看src.zip嗎?
    真的希望你能發封email給我,給我指點迷津。我的email是
    hwljava@163.com
    期待你的回復!謝謝!  回復  更多評論
      

    # re: 關于JTable,為何這樣? 2009-03-14 15:52 hwl
    不好意思,剛才第一個問題搞錯了,jdk里有這個說明的。我想問的是為什么java要弄成這樣?這不是多此一舉嗎?我剛用JTable(Object[][],Object[]columnname)時,看到這個構造方法里說按照指定的columnname構造表格時還以為這表格就已經包含有表頭了。  回復  更多評論
      

    主站蜘蛛池模板: 久久免费观看国产精品| 又长又大又粗又硬3p免费视频| 国产婷婷成人久久Av免费高清 | 亚洲精品美女久久久久9999| 成人片黄网站色大片免费观看cn| 亚洲人色大成年网站在线观看| 男人j进入女人j内部免费网站| 亚洲av成人无码久久精品| 一区二区三区在线免费看| 青青草国产免费久久久下载| 亚洲丝袜中文字幕| 免费A级毛片无码免费视| 77777亚洲午夜久久多喷| 免费中文熟妇在线影片 | 黄网站免费在线观看| 亚洲人成色77777| 日本免费中文视频| 久久亚洲sm情趣捆绑调教| 国产亚洲视频在线观看| 亚洲国产精品人人做人人爽| 成av免费大片黄在线观看| 亚洲AV福利天堂一区二区三| 国产高清不卡免费在线| 91丁香亚洲综合社区| 全亚洲最新黄色特级网站| 青青操免费在线观看| 久久精品国产亚洲AV无码麻豆| 性短视频在线观看免费不卡流畅| 亚洲精品乱码久久久久久V| 波多野结衣在线免费视频| 亚洲av乱码一区二区三区按摩| 亚洲成?v人片天堂网无码| 两个人的视频www免费| 亚洲精品国产情侣av在线| 成人免费无毒在线观看网站 | 亚洲精品高清在线| 国产精品免费高清在线观看| 亚洲国产日韩视频观看| 久久亚洲2019中文字幕| 手机看黄av免费网址| 一级特级女人18毛片免费视频|