Отключить вертикальную прокрутку в BlackBerry

В BlackBerry я разработал экран, на котором на заднем плане отображается изображение размером 480 X 360. Мой экран BB имеет размер 480 X 360. Поскольку изображение немного велико, когда я прокручиваю вертикально, экран прокручивается и мешает моему экрану.

Я хочу заблокировать прокрутку так, чтобы я не мог выполнять вертикальную прокрутку.

Мой код выглядит следующим образом:

public LaunchXtcMsngrScreen()
{
    int intwidth = Display.getWidth();
    int intheight = Display.getHeight();


    //getting the height/width of BB screen
    Debugger.debug(UrlInfo.workflow_File,"Screen Height ="+intheight);
    Debugger.debug(UrlInfo.workflow_File,"Screen Width ="+intwidth);

    BMbackground = Bitmap.getBitmapResource("xtclogo.jpg");

    VerticalFieldManager VFM = new VerticalFieldManager(VerticalFieldManager.USE_ALL_WIDTH 
                                                                | VerticalFieldManager.USE_ALL_HEIGHT
                                                                | VerticalFieldManager.NO_VERTICAL_SCROLL
                                                                | VerticalFieldManager.NO_VERTICAL_SCROLLBAR)
    {
        //Override the paint method to draw the background image.
        public void paint(Graphics graphics)
        {   
            //Draw the XTC Messenger logo
            graphics.drawBitmap(0, 0,Display.getWidth(),Display.getHeight(),BMbackground, 0, 0);
            super.paint(graphics);
        }
    };

    Bitmap registerbitmap = Bitmap.getBitmapResource("register_button.PNG");
    BFregister = new ImageButtonField(registerbitmap);

    BFregister.setMargin(245,0,0,190);//vertical pos,0,0,horizontal pos

    VFM.add(BFregister);
    add(VFM);

}

person user469999    schedule 13.01.2011    source источник
comment
Действительно? Может быть, я задаю очень простой вопрос, но сейчас у меня действительно нет времени гуглить. Пожалуйста, помогите мне сделать это   -  person Michael Donohue    schedule 13.01.2011


Ответы (2)


добавьте приведенный ниже код в качестве следующей строки объявления функции

super (NO_VERTICAL_SCROLL | NO_VERTICAL_SCROLLBAR);

person phoraceus    schedule 13.01.2011

Если вы разместили свое изображение в менеджере, вы можете следовать любой идее, а именно:

1) либо создайте собственный менеджер, либо напишите setExtent (480,360) в его методе субмаута. 2) вы также можете написать setExtent (480,360) в любом методе субмаута HorizontalfieldManager или VerticalFieldManager.

Вы пробовали использовать USE_ALL_WIDTH и USE_ALL_HEIGHT в каком-либо менеджере?

person Swati    schedule 13.01.2011
comment
Привет, swati. Да, я использовал USE_ALL_WIDTH, USE_ALL_HEIGHT в VFM, который является родительской панелью и содержит фоновое изображение. Спасибо за ваш ответ. Я попробую - person user469999; 13.01.2011
comment
привет, свати.Если я использую setExtent (480.360), это дает мне какое-то исключение ScrollView на симуляторе 9700. Нет никакого свойства VFM напрямую, с помощью которого я могу отключить прокрутку. Я пытался использовать NO_VERTICAL_SCROLL и NO_VERTICAL_SCROLLBAR, но это не сработало: ( - person user469999; 13.01.2011