![]() |
Модераторы: javastic, AntonSaburov |
![]() ![]() ![]() |
|
joker332 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 90 Регистрация: 26.10.2007 Репутация: нет Всего: нет |
написал простенькую програму.Но почему то не хочет работать repaint().или я его не правильно использую???
Я хочу что бы после нажатия на 1 выполнилось действие вот такое gg.fillRect(height/5,width/2+8,height/6*2,width/7); Но екран почемуто не перерисовывается??
Заранее спасибо!! |
|||
|
||||
Dummy |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 21.5.2007 Репутация: 7 Всего: 19 |
Да, код не совсем корректный:
Это сообщение отредактировал(а) Dummy - 21.10.2008, 23:26 |
|||
|
||||
joker332 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 90 Регистрация: 26.10.2007 Репутация: нет Всего: нет |
А где писать изменение екрана тоисть
???????? |
|||
|
||||
Dummy |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 21.5.2007 Репутация: 7 Всего: 19 |
А все в paint(). Добавить в этот метод необходимую логику таким образом, чтобы в нужных случаях отрисовывалось вот это самое
Еще один вариант - можно использовать GameCanvas. Тогда можно в любом момент у него получить объект Graphics, вызвав getGraphics(), нарисовать туда что угодно, а потом уже вызвать repaint(). |
|||
|
||||
joker332 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 90 Регистрация: 26.10.2007 Репутация: нет Всего: нет |
А можеш показать как это делать???я не совсем понемаю
Заранее благодарен |
|||
|
||||
W0LF |
|
|||
![]() alexander lonsky ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1164 Регистрация: 9.2.2006 Где: Ukraine.Dnepropet rovsk Репутация: 19 Всего: 20 |
ну, repaint() это примерно как и gc() он не обязательно сработает. Где-то это уже здесь обсуждлось. serviceRepaint() если не ошибаюсь, этот обязательно переристует
joker332, а почему ты не хочешь заглянуть в WTK**\apps\games например? там есть примеры и с Canvas и с GameCanvas -------------------- iOS developer |
|||
|
||||
Dummy |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 21.5.2007 Репутация: 7 Всего: 19 |
Ну, если repaint()'ы не прут каждые 5 микросекунд и текущий Displayable не меняется, то repaint() все же должен отработать. Другое дело, с какой задержкой. В данном случае repaint() можно считать равносильным вызову paint(). joker332, вот тебе ужас, накатанный за 5 минут. Делать красиво лень и некогда:
Смысл в том, что ты рисуешь разные вещи во внеэкранном буфере (GameCanvas.getGraphics()) в зависимости от состояния приложения - т. е., например, если у тебя выделен 1-й элемент списка, ты рисуешь выделение на первом элементе, если 2-й - на втором и т. п. А когда необходимо выплеснуть это все на дисплей, зовешь GameCanvas.repaint() |
|||
|
||||
eugine_s |
|
||||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 581 Регистрация: 14.11.2007 Где: Киев Репутация: 17 Всего: 17 |
или как вариант используя Canvas сделать вот так:
На нынешних девайсах я бы такое не делал, а вот когда я начинал только с j2me то помню ребята с опытом (на тот момент) в некоторых портациях использовали именно такой подход (кажется это делалось для Нокии S60). Добавлено через 1 минуту и 15 секунд
GameCanvas.flushGraphics() ? |
||||||
|
|||||||
Dummy |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 21.5.2007 Репутация: 7 Всего: 19 |
||||
|
||||
![]() ![]() ![]() |
FAQ раздела лежит здесь! |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java ME (J2ME) | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |