vjame

          優(yōu)化代碼是無止境的
          隨筆 - 65, 文章 - 9, 評論 - 26, 引用 - 0

          導(dǎo)航

          <2009年1月>
          28293031123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          公告

          子曰:“學(xué)而時(shí)習(xí)之,不亦說乎?有朋自遠(yuǎn)方來,不亦樂乎?人不知,而不慍,不亦君子乎?”

          常用鏈接

          留言簿(5)

          我參與的團(tuán)隊(duì)

          隨筆分類

          隨筆檔案

          文章檔案

          積分與排名

          • 積分 - 73776
          • 排名 - 754

          最新評論

          閱讀排行榜

          SWT Table的Tableitem多行顯示

          1:Table創(chuàng)建好之后添加如下代碼:
                  Listener paintListener = new Listener() {
                      
          public void handleEvent(Event event) {
                          
          switch(event.type) {        
                              
          case SWT.MeasureItem: {
                                  TableItem item 
          = (TableItem)event.item;
                                  String text 
          = getText(item, event.index);
                                  Point size 
          = event.gc.textExtent(text);
                                  event.width 
          = size.x;
                                  event.height 
          = Math.max(event.height, size.y);
                                  
          break;
                              }
                              
          case SWT.PaintItem: {
                                  TableItem item 
          = (TableItem)event.item;
                                  String text 
          = getText(item, event.index);
                                  Point size 
          = event.gc.textExtent(text);                    
                                  
          int offset2 = event.index == 0 ? Math.max(0, (event.height - size.y) / 2) : 0;
                                  event.gc.drawText(text, event.x, event.y 
          + offset2, true);
                                  
          break;
                              }
                              
          case SWT.EraseItem: {    
                                  event.detail 
          &= ~SWT.FOREGROUND;
                                  
          break;
                              }
                          }
                      }
                      String getText(TableItem item, 
          int column) {
                          
          return item.getText(column);
                      }
                  };
                 table.addListener(SWT.MeasureItem, paintListener);
                 table.addListener(SWT.PaintItem, paintListener);
                 table.addListener(SWT.EraseItem, paintListener);

          2. 換行要自己加個(gè)“\n”到字符串中,如
                 TableItem item = new TableItem(table, SWT.NONE, table.getItemCount());
                item.setText(
          "first line" + "\n" + "second line");

          3.如圖所示

          posted on 2009-01-10 09:40 lanjh 閱讀(2673) 評論(0)  編輯  收藏 所屬分類: Java App

          主站蜘蛛池模板: 延边| 米林县| 任丘市| 广汉市| 镇平县| 苍南县| 宁武县| 福海县| 五莲县| 沙田区| 利辛县| 宁乡县| 马边| 沂源县| 利川市| 揭西县| 新闻| 阿克| 阿拉尔市| 阜新市| 阳泉市| 新沂市| 徐州市| 格尔木市| 盈江县| 湘阴县| 宁安市| 治多县| 全椒县| 长白| 万载县| 元氏县| 自贡市| 普陀区| 竹北市| 衡阳县| 曲靖市| 大同市| 郓城县| 海原县| 达尔|