GXT ProgressBar

来源:互联网 发布:rhino mac 授权码 编辑:程序博客网 时间:2024/06/02 18:11

playProgressBar = new ProgressBar();
    playProgressBar.sinkEvents(Event.ONMOUSEDOWN);
  playProgressBar.addListener(Event.ONMOUSEDOWN, new Listener<ComponentEvent>()
    {
      public void handleEvent(ComponentEvent ce)
      {
       int x = ce.getClientX();
       int left = playProgressBar.getAbsoluteLeft();
       int width = playProgressBar.getWidth();
       double d = 100.0 * (x-left)/width;
       MdtRasterTrackPage.this.setPlayTrackPosition ((int) d);
       return;
      }
    });

  playProgressBar.setWidth(200);

 

 

 

 

private void setPlayTrackPosition (int pos)
 {
  if(dStart == null || dEnd == null)
   return;
  recvEndPacket = false;
  
  stopPlayTrack ();
  clearTrackPointBuf ();
  
  clearAllTrackPoints (mapPanel.getMapObj());
  
  if(pos < 0x0)
   pos = 0x0;
  else if(pos > 100)
   pos = 100;
  // set position time
  long start = dStart.getTime();
  long end = dEnd.getTime();
  Date date = new Date ();
  date.setTime(start + (end-start)*pos/100);
  String posTime = format.format(date);
  reqEntry.set("positionTime", posTime);
  
  playProgressBar.updateProgress(pos/100.0, null);
  
  playTrack ();
 }