<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構造表格時還以為這表格就已經包含有表頭了。  回復  更多評論
      

    主站蜘蛛池模板: 毛片A级毛片免费播放| 日韩精品内射视频免费观看| 国产成人免费爽爽爽视频 | 99无码人妻一区二区三区免费| 亚洲日韩欧洲乱码AV夜夜摸| 99在线免费视频| 亚洲国产精品无码久久久不卡| 精品免费tv久久久久久久| 亚洲AV永久无码区成人网站| 国产婷婷成人久久Av免费高清| 亚洲AV无码一区东京热| 小日子的在线观看免费| 亚洲国产精品精华液| 国产又黄又爽又刺激的免费网址| 国产综合成人亚洲区| 亚洲人成网站在线观看青青| 成人无码WWW免费视频| 亚洲精品视频在线| 在线观看免费人成视频色9| 亚洲高清国产拍精品熟女| 亚洲福利中文字幕在线网址| 91在线视频免费观看| 亚洲高清视频免费| 成年女人18级毛片毛片免费 | 7777久久亚洲中文字幕蜜桃| 色婷婷7777免费视频在线观看| 亚洲日本VA午夜在线电影| 一本色道久久88亚洲综合 | 国产一级高青免费| 亚洲精品资源在线| 日本一道本高清免费| 9久热这里只有精品免费| 亚洲一级黄色大片| 无码国产亚洲日韩国精品视频一区二区三区| 亚洲国产免费综合| 亚洲黄色三级视频| 亚洲国产成人爱av在线播放| 久久aⅴ免费观看| 久久精品国产亚洲AV| 亚洲成熟xxxxx电影| 国产免费小视频在线观看|