2011-11-14 10 views
0

jTableでタイムテーブルを作成したいと思います。一番上の列は月曜日から日曜日に表示され、左の列は2時間間隔、例えば1列目(0000 - 0200)、2列目(0200 - 0400)の時刻を表示します。jTableのタイムテーブル

そしてボタンをクリックすると、タイミングは2h間隔から1h間隔に変わります。私は2時間、1時間、30分、15分、1分、30秒、1秒の間隔で行う必要があるため、ハードコーディングしたくないので、ハードコーディングには時間がかかりすぎます。誰かが私に例を示したり、2時間から1時間の間の例を作成して何をすべきか分かってもらえるように助けてくれますか?

データ配列はデータを格納するためのもので、1秒間隔であれば何千もの配列があるので、データを格納する必要があります。

private void oneHour() //1 interval functions 
    { 
     if(!once) 
     { 
      initialize(); 
      once = true; 
     } 
     jTable.setModel(new javax.swing.table.DefaultTableModel(
    new Object [][] { 
     {"0000 - 0100", data[0][0], data[0][1], data[0][2], data[0][3], data[0][4], data[0][5], data[0][6]}, 
     {"0100 - 0200", data[2][0], data[2][1], data[2][2], data[2][3], data[2][4], data[2][5], data[2][6]}, 
     {"0200 - 0300", data[4][0], data[4][1], data[4][2], data[4][3], data[4][4], data[4][5], data[4][6]}, 
     {"0300 - 0400", data[6][0], data[6][1], data[6][2], data[6][3], data[6][4], data[6][5], data[6][6]}, 
     {"0400 - 0600", data[8][0], data[8][1], data[8][2], data[8][3], data[8][4], data[8][5], data[8][6]}, 
     {"0600 - 0700", data[10][0], data[4][1], data[10][2], data[10][3], data[10][4], data[10][5], data[10][6]}, 
     {"0700 - 0800", data[12][0], data[12][1], data[12][2], data[12][3], data[12][4], data[12][5], data[12][6]}, 
     {"0800 - 0900", data[14][0], data[14][1], data[14][2], data[14][3], data[14][4], data[14][5], data[14][6]}, 
     {"0900 - 1000", data[16][0], data[16][1], data[16][2], data[16][3], data[16][4], data[16][5], data[16][6]}, 
     {"1000 - 1100", data[18][0], data[18][1], data[18][2], data[18][3], data[18][4], data[18][5], data[18][6]}, 
     {"1100 - 1200", data[20][0], data[20][1], data[20][2], data[20][3], data[20][4], data[20][5], data[20][6]}, 
     {"1200 - 1300", data[22][0], data[22][1], data[22][2], data[22][3], data[22][4], data[22][5], data[22][6]}, 
     {"1300 - 1400", data[24][0], data[24][1], data[24][2], data[24][3], data[24][4], data[24][5], data[24][6]}, 
     {"1400 - 1500", data[26][0], data[26][1], data[26][2], data[26][3], data[26][4], data[26][5], data[26][6]}, 
     {"1500 - 1600", data[28][0], data[28][1], data[28][2], data[28][3], data[28][4], data[28][5], data[28][6]}, 
     {"1600 - 1700", data[30][0], data[30][1], data[30][2], data[30][3], data[30][4], data[30][5], data[30][6]}, 
     {"1700 - 1800", data[32][0], data[32][1], data[32][2], data[32][3], data[32][4], data[32][5], data[32][6]}, 
     {"1800 - 1900", data[34][0], data[34][1], data[34][2], data[34][3], data[34][4], data[34][5], data[34][6]}, 
     {"1900 - 2000", data[36][0], data[36][1], data[36][2], data[36][3], data[36][4], data[36][5], data[36][6]}, 
     {"2000 - 2100", data[38][0], data[38][1], data[38][2], data[38][3], data[38][4], data[38][5], data[38][6]}, 
     {"2100 - 2200", data[40][0], data[40][1], data[40][2], data[40][3], data[40][4], data[40][5], data[40][6]}, 
     {"2200 - 2300", data[42][0], data[42][1], data[42][2], data[42][3], data[42][4], data[42][5], data[42][6]}, 
     {"2300 - 2400", data[44][0], data[44][1], data[44][2], data[44][3], data[44][4], data[44][5], data[44][6]}, 
     {"2400 - 0000", data[46][0], data[46][1], data[46][2], data[46][3], data[46][4], data[46][5], data[46][6]}, 

    }, 
    new String [] { 
     "Time/Day", "(Mon)", "(Tue)", "(Wed)", "(Thurs)", "(Fri)", "(Sat)", "(Sun)" 
    } 
)); 
    } 


    private void twoHour() //2 hour interval functions 
    { 
     if(!once) 
     { 
      initialize(); 
      once = true; 
     } 
     jTable.setModel(new javax.swing.table.DefaultTableModel(
    new Object [][] { 
     {"0000 - 0200", data[0][0], data[0][1], data[0][2], data[0][3], data[0][4], data[0][5], data[0][6]}, 
     {"0200 - 0400", data[4][0], data[4][1], data[4][2], data[4][3], data[4][4], data[4][5], data[4][6]}, 
     {"0400 - 0600", data[8][0], data[8][1], data[8][2], data[8][3], data[8][4], data[8][5], data[8][6]}, 
     {"0600 - 0800", data[12][0], data[12][1], data[12][2], data[12][3], data[12][4], data[12][5], data[12][6]}, 
     {"0800 - 1000", data[16][0], data[16][1], data[16][2], data[16][3], data[16][4], data[16][5], data[16][6]}, 
     {"1000 - 1200", data[20][0], data[20][1], data[20][2], data[20][3], data[20][4], data[20][5], data[20][6]}, 
     {"1200 - 1400", data[24][0], data[24][1], data[24][2], data[24][3], data[24][4], data[24][5], data[24][6]}, 
     {"1400 - 1600", data[28][0], data[28][1], data[28][2], data[28][3], data[28][4], data[28][5], data[28][6]}, 
     {"1600 - 1800", data[32][0], data[32][1], data[32][2], data[32][3], data[32][4], data[32][5], data[32][6]}, 
     {"1800 - 2000", data[36][0], data[36][1], data[36][2], data[36][3], data[36][4], data[36][5], data[36][6]}, 
     {"2000 - 2200", data[40][0], data[40][1], data[40][2], data[40][3], data[40][4], data[40][5], data[40][6]}, 
     {"2200 - 2400",data[44][0], data[44][1], data[44][2], data[44][3], data[44][4], data[44][5], data[44][6]} 


    }, 

答えて

2

How to Use Tables上のJavaチュートリアルを見てみましょう。これはあなたのテーブルを作成するのに役立ちます。あなたが何かを働かせたら、あなたがつかまえられたらより具体的な助けを求めることができます。

+0

私は既にjtableのチュートリアルを試してみましたが、それが役に立たなかったのです... – chandra

+2

これまでに書いたコードと正確にあなたがいなくなった場所を表示してください。 – dogbane

+0

私は間隔のタイミングを印刷するためにループを使用する方法がないので、時間の間隔をハードコードします。また、私はデータを格納するデータ配列のために。 – chandra