Search code examples
blackberryprogress-barblackberry-simulatorblackberry-jde

How to stop progressbar in blackberry


In BlackBerry, my application is working perfectly fine. But one Requirement is when I load data from server, a progress bar is showing. If it takes so much time to load data from server, then I want to stop the progress bar. In BlackBerry, on back key pressed, it is not working. Please help me.

public class WaitScreen extends PopupScreen
{
   public WaitScreen(String msg) {

      super(new HorizontalFieldManager());

      add(new LabelField(msg));
      AnimatedGIFField testanimated = new AnimatedGIFField(
         (GIFEncodedImage) (GIFEncodedImage.getEncodedImageResource("ajax_loader.gif")),
         AnimatedGIFField.FIELD_HCENTER | AnimatedGIFField.FIELD_VCENTER);

      add(testanimated);
   }
}

Solution

  •      public long timeout=0;
    
                     t.schedule(new TimerTask() {
    
                        public void run() 
                        {
                            // TODO Auto-generated method stub
    
                            timeout+=1;
                            System.out.println("Timeout value:"+timeout);
                            if(timeout>=28)
                            {
                                //timeout every 1 munite
    
                                 System.out.println("Timeout value:"+timeout);
                                 System.out.println("closing connection");
    
    
                                     try
                                     {
                                         parent.notifyDestroyed();
    
                                     }
                                     catch (Exception ex)
                                     {                   
    
                                         System.out.println("Exception is:"+ex);
                                     }
                                     this.cancel();
                         }
    
                        }
                    }, 0, 1000);
    
        //           Thread.sleep(30000);
    
    httpconn_post = (HttpConnection) Connector.open(url);
    
                 httpconn_post.setRequestMethod(HttpConnection.POST);
    
               httpconn_post.setRequestProperty("Accept_Language","en-US");
               httpconn_post.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
    
               OutputStream out = httpconn_post.openOutputStream();
    
               out.write(param.getBytes());
               out.flush();
    
               System.out.println("Status Line Code: " + httpconn_post.getResponseCode());
               System.out.println("Status Line Message: " + httpconn_post.getResponseMessage());
    
               if ( httpconn_post.getResponseCode()== HttpConnection.HTTP_OK )
               {
               is=httpconn_post.openDataInputStream();
    
    //           cancelling timer
    
               t.cancel();
    .....
    .....
    }
    
    
    
     I had done this using this code..I had done it successfully..