Re: [問題] JTable的排序與上色

看板java作者 (十年一夢)時間10年前 (2013/10/17 20:28), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串4/8 (看更多)
※ 引述《prjryu (再努力一點)》之銘言: : ※ 引述《sbrhsieh (十年一夢)》之銘言: : 下面綠色的部份是我所說改變的地方,對table而言我insert的row仍然是obj陣列, : 但我不懂是否是您所說的需要跟著改default cell renderer的情況。 : 如果需要更動的話應該如何更動呢? : 我的default cell renderer會去取table裡cell的值計算判斷是否染色, : 現在遇到的問題是, : 那個被我以double形態轉成obj型態insert入table的cell不會染色 : 這種cell重畫的時候沒有call到我所set的DefaultRenderer...orz : strData = BufferedStream.readLine(); : StringTokenizer st = new StringTokenizer(strData, "\t"); : st = new StringTokenizer(strData, "\t"); : tokens = new Object[15]; : for( i=0, j=st.countTokens(); i < j; i++) : { : jLabel1.setText("token: "+j); : if( i > 2 ) : { : //放<double>後table才能正確排序,但DefaultTableCellRenderer無法正確上色 : tokens[i] = Double.parseDouble( st.nextToken() ); : //原:tokens[i] = st.nextToken();//放<obj>後table才能正確上色,但無法正確排序 : } : else : { : tokens[i] = st.nextToken(); : } : } : defaultTableModel.addRow(tokens); 你得提供你的 table cell renderer 的碼才有助找出問題點。 你把 model 內的數據從 string 改成 double,那麼你在 table cell renderer 判斷要不要標記的作法一定會受影響,你也要一併改寫,目前就是沒有這部分的 資訊。 如果你的 JTable 應用很複雜,建議你可以考慮使用 SwingX 之類的套件或許會 輕鬆一點。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 36.238.39.58
文章代碼(AID): #1INzVomH (java)
討論串 (同標題文章)
文章代碼(AID): #1INzVomH (java)