How can i invoke paint multiple time in my app i tried invalidate but but it is not calling paint i think can anybody provide sample code for invoking paint multiple time.

```
  package mypackage;

import com.rss.logger.Log;

import net.rim.device.api.system.Bitmap;
import net.rim.device.api.ui.Graphics;
import net.rim.device.api.ui.UiApplication;
import net.rim.device.api.ui.component.BitmapField;
import net.rim.device.api.ui.component.LabelField;
import net.rim.device.api.ui.container.MainScreen;

/**
 * A class extending the MainScreen class, which provides default standard
 * behavior for BlackBerry GUI applications.
 */
public final class MyScreen extends MainScreen
{
    BitmapField objBitmapField;
    boolean objBoolean;
    int postion=0;
    public MyScreen()
    {        
        objBitmapField=new BitmapField(Bitmap.getBitmapResource("bb.png"));
        // Set the displayed title of the screen       
        setTitle("MyTitle");
        objBoolean=false;
      new AnimationThread().start();

    }
    private class AnimationThread extends Thread{

        public void run() {
            super.run();
             UiApplication.getUiApplication().invokeLater(new Runnable() {
                  public void run()
                  {
                      objBoolean=true;
                    //Add a new LabelField to the screen.
                    //theScreen.add(new LabelField("Hello there.");

                    //Call the screen’s invalidate method to
                    //force the screen to redraw itself.
                    //Note that invalidate can be called
                    //at the screen, manager or field level,
                    //which means you can inform the
                    //BlackBerry to only redraw the area that
                    //has changed.

                      for (int i = 0; i < 20; i++) {
                          try {
                            sleep(200);
                        } catch (InterruptedException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
                        Log.info("in run");
                          postion=postion+5;
                          MyScreen.this.invalidate();
                    }

                  }
                });
        }

    }

    protected void paint(Graphics graphics) {

        super.paint(graphics);
        Log.info("in paint");
        if(objBoolean)          
        graphics.drawBitmap(20, postion, 50, 50, Bitmap.getBitmapResource("bb.png"), 30, 40);

    }

}

```