Как сделать прокрутку в холсте 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
,