Как сделать прокрутку в холсте j2me?

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

Я пробовал следующий код внутри метода рисования >>>>>

g.translate(x,y);

и передача значения для переменной 'y' в событиях keydown и keyup.

Может кто-нибудь помочь мне сделать это?

3 ответа

Решение

Вы пробовали с уменьшением значения Y в keyUP и вызовом repaint() метод также делает то же самое с keyDown, но теперь значение Y будет уменьшаться и вызовет repaint() метод.

Использовать g.translate(x, changingYvalue);

попробуй это.

Самый простой способ (хотя и требует много памяти) - использовать MutableImage и рисовать его с отрицательными координатами y.

Изменяемое изображение - это просто новое изображение (ш, ч).
Затем вы получите его графический контекст, используя myImage.getGraphics()и рисовать с этим графическим объектом. Он служит закадровым буфером.

Чем в краске (Графика г) звоните:

g.drawImage(0,y,...);

где вы зацикливаете уменьшая y на каждом системном вызове для рисования.
(не блокируйте рисование! - каждый вызов - один кадр, и вы делаете покадровую анимацию
сделать цикл анимации из другого потока, где вы уменьшаете y, чем вызываете repaint() и sleep).

Я думаю, что полоса прокрутки должна быть нарисована внутри paint метод. И вы реализуете keyReleased метод при нажатии на стрелку полосы прокрутки. Для реализации scrolling Я бы предпочел позвонить repaint(); и я буду управлять paint метод с логическим или другим типом частного variable,

Другие вопросы по тегам