Swing


          天行健 君子以自強(qiáng)不息

          posts - 69, comments - 215, trackbacks - 0, articles - 16
             :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          修改JTable默認(rèn)Copy實(shí)現(xiàn)

          Posted on 2010-03-05 11:34 zht 閱讀(1058) 評(píng)論(0)  編輯  收藏 所屬分類: Swing

              最近有人問,如何在table中Ctrl+C賦值的時(shí)候,定制選中的內(nèi)容。默認(rèn)情況下是返回value值,但是很多情況下,我們都會(huì)定制一些顯示,舉個(gè)例子,取出來的原始位置數(shù)據(jù)是0,重載renderer以后可能就變成了"右",當(dāng)我們copy的時(shí)候,而我們?nèi)〉降闹等匀皇?,而對(duì)于客戶而言,可能取出"右"可能更有意義,這個(gè)時(shí)候就需要做一些處理了,如下所示:

          table.getActionMap().put("copy"new AbstractAction() {
                      
          public void
           actionPerformed(ActionEvent e) {
          //至于此處如何處理,就看具體的邏輯了

                          box.getLastSelectedElement();
                          
          int column =
           table.getSelectedColumn();
                          
          int row =
           table.getSelectedRow();
                          
          if (column != -1 && row != -1
          ) {
                              Object value 
          =
           table.getValueAt(row, column);
                              StringSelection stringSelection 
          = new
           StringSelection(value.toString()+"hello");
                              Clipboard clipboard 
          =
           Toolkit.getDefaultToolkit().getSystemClipboard();
                              clipboard.setContents(stringSelection, 
          null
          );
                          }
                      }
                  });

           

          主站蜘蛛池模板: 射洪县| 凤阳县| 永和县| 冀州市| 固原市| 商河县| 房产| 塘沽区| 上栗县| 淅川县| 灵川县| 鹤壁市| 赤壁市| 瓮安县| 南溪县| 溆浦县| 盐亭县| 芜湖县| 杭锦旗| 特克斯县| 娱乐| 平武县| 新巴尔虎右旗| 炉霍县| 漳浦县| 峨山| 太康县| 襄垣县| 庆云县| 新巴尔虎左旗| 渝中区| 阿拉善右旗| 克拉玛依市| 宜城市| 神木县| 阿尔山市| 进贤县| 扶沟县| 鹿邑县| 清流县| 濮阳市|