Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для мобильных телефонов > JAVA Micro Edition > Программирование

Программирование Вопросы связанные с программированием в JAVA

Ответ
 
Опции темы
Старый 04.07.2006, 15:32   #1
SubZer0
Администратор
 
Аватар для SubZer0
 
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений
(для 996 пользователей)
GameCanvas

чето или я совсем тупой или хз...

не могу запустить даже стандартный пример юзания GameCanvas

import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.*;

	public class SimpleGameCanvas
		extends GameCanvas
		implements Runnable {
	    private boolean mTrucking;
	    private long mFrameDelay;

	    private int mX, mY;
	    private int mState;

	    public SimpleGameCanvas() {
		super(true);
		mX = getWidth() / 2;
		mY = getHeight() / 2;
		mState = 0;
		mFrameDelay = 20;
	    }

	    public void start() {
		mTrucking = true;
		Thread t = new Thread(this);
		t.start();
	    }

	    public void stop() { mTrucking = false; }

	    public void run() {
		Graphics g = getGraphics();

		while (mTrucking == true) {
			tick();
			input();
			render(g);
			try { Thread.sleep(mFrameDelay); }
			catch (InterruptedException ie) {}
		}
	    }

	    private void tick() {
		mState = (mState + 1) % 20;
	    }

	    private void input() {
		int keyStates = getKeyStates();
		if ((keyStates & LEFT_PRESSED) != 0)
			mX = Math.max(0, mX - 1);
		if ((keyStates & RIGHT_PRESSED) != 0)
			mX = Math.min(getWidth(), mX + 1);
		if ((keyStates & UP_PRESSED) != 0)
			mY = Math.max(0, mY - 1);
		if ((keyStates & DOWN_PRESSED) != 0)
			mY = Math.min(getHeight(), mY + 1);
	    }

	    private void render(Graphics g) {
		g.setColor(0xffffff);
		g.fillRect(0, 0, getWidth(), getHeight());

		g.setColor(0x0000ff);
		g.drawLine(mX, mY, mX - 10 + mState, mY - 10);
		g.drawLine(mX, mY, mX + 10, mY - 10 + mState);
		g.drawLine(mX, mY, mX + 10 - mState, mY + 10);
		g.drawLine(mX, mY, mX - 10, mY + 10 - mState);

		flushGraphics();
	    }
	}
NetBeans компилирует это все дело без проблем, но потом эмулятор пишет:

Exeption: lava.lang.InstantiationExeption: Class not a MIDlet
и как прикажете с этим бороться?
__________________
Как минимум я помог многим (с)
(Offline)
 
Ответить с цитированием
Старый 04.07.2006, 17:48   #2
SubZer0
Администратор
 
Аватар для SubZer0
 
Регистрация: 03.09.2005
Сообщений: 2,408
Написано 301 полезных сообщений
(для 996 пользователей)
жаль что никто не подсказал... теперь поздно... теперь я сам допёр.
__________________
Как минимум я помог многим (с)
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с GameCanvas night__angel JAVA Micro Edition 1 19.01.2009 14:01
GameCanvas и getKeyStates() Serg_Bloim Программирование 6 25.12.2008 18:23
как узнать клавишу в gamecanvas? carmageddonist Программирование 1 28.01.2007 17:22


Часовой пояс GMT +4, время: 09:13.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com