9910

          單飛

             :: 首頁 :: 聯系 :: 聚合  :: 管理
          private Label doneLabel;
          private Timer timer;

              public class ATask extends TimerTask {
                  @Override
                  public void run() {
                      showScrollText(doneLabel);
                     

                  }
              }

              /**
               * 滾動顯示字幕
               *
               * @param toDoLabel
               */
              private void showScrollText(final Label toDoLabel) {
                  if (toDoLabel != null) {
                      if (toDoLabel.isDisposed()) {
                          timer.cancel();
                          return;
                      }
                      shell.getDisplay().asyncExec(new Runnable() {
                          // @Override
                          public void run() {
                              String txt = toDoLabel.getText();
                              if (txt != null && txt.length() > 50) {
                                  txt = txt.substring(1, txt.length())
                                          + txt.substring(0, 1);
                                  toDoLabel.setText(txt);
                              }
                          }

                      });

                  }
              }
          構造的時候
          // 滾動顯示字幕
                  timer = new Timer();
                  timer.schedule(new ATask(), 0, 500);

                  //
              }

              // @Override
              public void dispose() {
                  timer.cancel();
                  super.dispose();
              }
          private Timer timer;

              public class ATask extends TimerTask {
                  @Override
                  public void run() {
                      showScrollText(doneLabel);
                     

                  }
              }


              /**
               * 滾動顯示字幕
               *
               * @param toDoLabel
               */
              private void showScrollText(final Label toDoLabel) {
                  if (toDoLabel != null) {
                      if (toDoLabel.isDisposed()) {
                          timer.cancel();
                          return;
                      }
                      shell.getDisplay().asyncExec(new Runnable() {
                          // @Override
                          public void run() {
                              String txt = toDoLabel.getText();
                              if (txt != null && txt.length() > 50) {
                                  txt = txt.substring(1, txt.length())
                                          + txt.substring(0, 1);
                                  toDoLabel.setText(txt);
                              }
                          }

                      });

                  }
              }


          構造的時候
          // 滾動顯示字幕
                  timer = new Timer();
                  timer.schedule(new ATask(), 0, 500);

          // @Override
              public void dispose() {
                  timer.cancel();
                  super.dispose();
              }



          posted on 2010-08-06 16:47 單飛 閱讀(964) 評論(1)  編輯  收藏 所屬分類: Eclipse Plugin

          Feedback

          # re: swt 顯示滾動字幕 2010-10-27 17:29 一意孤行
          exe4j可以把swt打包exe  回復  更多評論
            

          主站蜘蛛池模板: 泗洪县| 额尔古纳市| 开江县| 景宁| 庆云县| 永城市| 乌海市| 仁寿县| 麻栗坡县| 郑州市| 惠东县| 靖远县| 进贤县| 正阳县| 广汉市| 海口市| 安化县| 平顶山市| 苍梧县| 乾安县| 建昌县| 景谷| 福泉市| 汕尾市| 庆安县| 吉木萨尔县| 敦化市| 尉犁县| 祁阳县| 宁城县| 沂南县| 深泽县| 新密市| 彝良县| 全椒县| 陇川县| 巩留县| 育儿| 丽水市| 南召县| 渝北区|