Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
REDMI Note 17 Pro porta in fascia media una batteria da 8.340 mAh con ricarica HyperCharge a 67W, un display AMOLED da 6,83 pollici capace di picchi di luminosità molto elevati e una struttura certificata TÜV SÜD contro cadute e infiltrazioni d'acqua, il tutto racchiuso in una scocca da 223 grammi. Lo abbiamo provato per diversi giorni tra fotocamera, prestazioni, autonomia e prezzo sul mercato italiano
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra integra un sensore da 1 pollice 8K, ottiche Leica e triplo chip IA. Tra schermo OLED rimovibile, workflow I-Log a 10 bit e stabilizzazione a tre assi, analizziamo le doti tecniche di una gimbal camera pensata per i professionisti
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 08-07-2008, 16:17   #1
agente mm8
Senior Member
 
Iscritto dal: Mar 2008
Messaggi: 401
[J2ME]Errore... ma dov'è???

Ho iniziato a giocherellare con j2me, e sto iniziando a creare qualche gioco aiutandomi con deio tutorial.
Il mio problema è questo: ho creato la classe MioCanvas:
Codice:
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.*;
import java.io.IOException;

public class MioCanvas extends GameCanvas implements Runnable
{
	private Image img;
	private Sprite sprite;
	private boolean inGioco;
	private int posX, posY;
	//mappa
	private Sprite[][] mappaImg;
	private int righe,colonne;
	private Image muro;
	private int[][] mappa = {
			{0,0,1,1,1,1,1,1,1,1},
			{0,0,0,0,0,0,0,0,0,1},
			{1,0,0,0,0,0,0,0,0,1},
			{1,0,0,0,1,1,0,0,0,1},
			{1,0,0,1,1,0,0,0,0,1},
			{1,0,0,0,0,0,0,0,0,1},
			{1,0,0,0,0,0,0,0,0,1},
			{1,0,0,0,0,0,0,0,0,1},
			{1,0,0,0,0,0,0,0,0,1},
			{1,1,1,1,1,1,1,1,1,1}
		};
	public MioCanvas()
	{
		super(true);
		try{
			img = Image.createImage("/pallaTraspAni.png");
			sprite = new Sprite(img, 32, 32);
		}catch (IOException ex)
		{
			System.err.println("Errore: " + ex);
		}
		posX = 10;
		posY = 10;
		//mappa
		mappaImg = new Sprite[righe][colonne];
                          muro = createImage("/muro.png");
		//riempimento tabella sprite
		for(int i = 0; i < righe; i++)
		{
			for(int j = 0; j < colonne; j++)
			{
				if(mappa[i][j] == 1)
				{
					mappaImg[i][j] = new Sprite(muro, 16, 16);
					mappaImg[i][j].setPosition(posX+16*j, posY+16*i);
				}
			}
		}
		
    }
	private void input()
	{
//non ho inserito il controllo della calpestabilità, ma fate come che ci sia
		int tasto = getKeyStates();
		if((tasto & LEFT_PRESSED) != 0){
			sprite.setFrame(2);
			posX -= 5; 
		}
		if((tasto & RIGHT_PRESSED) != 0){
			sprite.setFrame(1);
			posX += 5; 
        }
		if((tasto & UP_PRESSED) != 0){
			sprite.setFrame(3);
			posY -= 5;
        }
		if((tasto & DOWN_PRESSED) != 0){
			sprite.setFrame(0);
			posY += 5;
		}
	}
	public void disegna()
	{
		Graphics g = getGraphics();
		g.setColor(187, 213, 251);
		g.fillRect(0, 0, getWidth(), getHeight());
		sprite.setPosition(posX, posY);
		sprite.paint(g);
		//mappa
		for(int i = 0; i<righe; i++)
		{
			for(int j = 0; j<colonne; j++)
			{
				//se c'è qualcosa da disegnare disegnalo
				if(mappa[i][j] == 1)
				{
					mappaImg[i][j].paint(g);
				}
			}
		}
		flushGraphics();
	}
	public void start()
	{
		inGioco = true;
		Thread t = new Thread(this);
		t.start();
	}
	public void run()
	{
		while(inGioco == true)
		{
			input();
			disegna();
			try{Thread.sleep(50);}
			catch(InterruptedException ie) {}
		}
	}
	public void stop()
	{
		inGioco = false;
	}
}
e la classe MioMidlet:
Codice:
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class MioMidlet extends MIDlet
{
	private Display d;
	private MioCanvas schermata;
	public MioMidlet()
	{
		d = Display.getDisplay(this);
		schermata = new MioCanvas();
		schermata.start();
	}
	protected void startApp()
	{
		d.setCurrent(schermata);
	}
	protected void pauseApp() {}
	protected void destroyApp(boolean unconditional) {}
}
Faccio build sul Toolkit e indovinate un po'?
Seleziona la riga "muro = Image.createImage("/muro.png");" e dice:
"unreported exception java.io.IOException; must be caught or declared to be thrown".
Perche mi dà questo errore?
Che faccio?
agente mm8 è offline   Rispondi citando il messaggio o parte di esso
Old 08-07-2008, 16:55   #2
agente mm8
Senior Member
 
Iscritto dal: Mar 2008
Messaggi: 401
Ehi, c'è nessuno?!?
agente mm8 è offline   Rispondi citando il messaggio o parte di esso
Old 08-07-2008, 17:28   #3
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12113
perchè ovviamente devi racchiudere il blocco di codice che lancia una IOException in un blocco try catch.....
ma hai mai programmato in java o sei partito sparato con j2me?
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 08-07-2008, 20:29   #4
agente mm8
Senior Member
 
Iscritto dal: Mar 2008
Messaggi: 401
Ho fatto così:
Codice:
public MioCanvas()
	{
		super(true);
		Graphics g2 = getGraphics();
		try{
			img = Image.createImage("/pallaTraspAni.png");
			sprite = new Sprite(img, 32, 32);
			muro = Image.createImage("/muro.png");
			mappaImg = new Sprite[righe][colonne];
			//riempimento tabella sprite
		    for(int i = 0; i < righe; i++)
		    {
			    for(int j = 0; j < colonne; j++)
			    {
				    if(mappa[i][j] == 1)
				    {
					    mappaImg[i][j] = new Sprite(muro, 16, 16);
					    mappaImg[i][j].setPosition(posX+16*j, posY+16*i);
					    mappaImg[i][j].paint(g2);
				    }
			    }
		    }
		}catch (IOException ex)
		{
			System.err.println("Errore: " + ex);
		}
		posX = 10;
		posY = 10;
    }
ma non mi disegna il muro!!!
agente mm8 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce Recensione REDMI Note 17 Pro: il midrange con ba...
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema Insta360 Luna Ultra: la potenza del sensore da 1...
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Pangram arriva su Gmail per identificare...
ASUS ProArt Display OLED: quattro nuovi ...
Saldi Autunnali Mammotion: fino a 369 € ...
La BEI annuncia un nuovo Consiglio di es...
Il board di Meta ordina la rimozione di ...
Sony 400mm f/4.5 e 600mm f/6.3 GM: un gr...
Anche gli avvocati sono a rischio? OpenA...
JBL Tune Beam 2 a 59€ (invece di 99€): a...
Pioggia di sconti con Engwe: e-bike con ...
HONOR Pad 20 e Pad 20 Pro: due tablet pe...
La difesa secondo Thales: arriva HexaFor...
Lo stile di Corsair, la qualità p...
Su Amazon 2 MacBook Pro con chip M5 Pro,...
Amazon Music Unlimited gratis fino a 4 m...
Samsung Galaxy Watch8 Classic a 299€ e G...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 12:28.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v