|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jun 2003
Città: bologna e rionero in vulture
Messaggi: 356
|
[JAVA] Array di JLabel
Salve a tutti, sto facendo un gioco in java, solo che ho un problemino con l'array di JLabel.
In pratica ho creato due JLabel []: JLabel primo = new JLabel[6]; JLabel secondo = new JLabel[4]; In quello da 6 ho messo, spero correttamente, 6 immagini. Poi ho generato 4 numeri Random, da 0 a 5 compresi, che sarebbero gli indici del JLabel 'primo'. Vorrei mettere nel secondo JLabel 4 immagini a caso che ci sono nel primo JLabel, ecco perchè ho usato Random. Poi ho fatto una cosa del genere: secondo[0] = primo[numerorandomgeneratoprima]; Spero di essere stato chiaro....è corretta una cosa del genere??? Grazie
__________________
Venite a bere una birra nell'angolo di zio peppino: http://www.langolodiziopeppino.forumfree.net |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
|
scusa, è il problemino e che non ti funziona o non sai se funziona???
Prova e posta il problema, e se già l'hai detto scusa, ma il caldo mi ha rinco......
__________________
My gaming placement |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jun 2003
Città: bologna e rionero in vulture
Messaggi: 356
|
Mi da un errore qui: secondo[0] = primo[numerorandomgeneratoprima];
Ora non ho il codice a portata di mano perchè sono a lavoro.....tu hai mai fatto una cosa del genere??
__________________
Venite a bere una birra nell'angolo di zio peppino: http://www.langolodiziopeppino.forumfree.net |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
|
allora, dando per scontato che il numerorandomgeneratoprima sia un intero (ripeto intero int) tra 0 e 5, dovresti dirci che tipo di errore ti dà, magari postando il codice di output dell'errore.
la celerità non è importante, tanto siamo qui
__________________
My gaming placement |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jun 2003
Città: bologna e rionero in vulture
Messaggi: 356
|
Ok...allora appena vado a casa vi posto il codice...
Grazie mille per l'aiuto....sempre molto gentili! Ah...cmq uso Eclipse, e non mi mette il tipo di errore...mi mette sola la riga dove c'è l'errore...
__________________
Venite a bere una birra nell'angolo di zio peppino: http://www.langolodiziopeppino.forumfree.net |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jun 2003
Città: bologna e rionero in vulture
Messaggi: 356
|
Ecco....questo è il codice, aspetto una vostra Illuminazione :lol: :
import java.util.Random; import javax.swing.ImageIcon; import javax.swing.JLabel; public class Combinazione { public static JLabel[] labelCombinazione; public static JLabel[] labelSoluzione; int NUMERO_COLORI = 6; static int NUMERO_SOLUZIONE = 4; public void creaCombinazione() { java.net.URL url; labelCombinazione = new JLabel[NUMERO_COLORI]; url = this.getClass().getResource("/risorse/t0.jpg"); labelCombinazione[0].setIcon(new ImageIcon(url)); url = this.getClass().getResource("/risorse/t1.jpg"); labelCombinazione[1].setIcon(new ImageIcon(url)); url = this.getClass().getResource("/risorse/t2.jpg"); labelCombinazione[2].setIcon(new ImageIcon(url)); url = this.getClass().getResource("/risorse/t3.jpg"); labelCombinazione[3].setIcon(new ImageIcon(url)); url = this.getClass().getResource("/risorse/t4.jpg"); labelCombinazione[4].setIcon(new ImageIcon(url)); url = this.getClass().getResource("/risorse/t5.jpg"); labelCombinazione[5].setIcon(new ImageIcon(url)); creaSoluzione(); } public static JLabel[] creaSoluzione(){ labelSoluzione = new JLabel[NUMERO_SOLUZIONE]; Random generator = new Random(); int colore0,colore1,colore2,colore3; colore0 = Math.abs(generator.nextInt()) % 6; labelSoluzione[0] = labelCombinazione[colore0]; colore1 = Math.abs(generator.nextInt()) % 6; labelSoluzione[1] = labelCombinazione[colore1]; colore2 = Math.abs(generator.nextInt()) % 6; labelSoluzione[2] = labelCombinazione[colore2]; colore3 = Math.abs(generator.nextInt()) % 6; labelSoluzione[3] = labelCombinazione[colore3]; return labelSoluzione; } }
__________________
Venite a bere una birra nell'angolo di zio peppino: http://www.langolodiziopeppino.forumfree.net |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
|
emh, il codice dell'errore????
__________________
My gaming placement |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Sep 2005
Città: Torino
Messaggi: 606
|
per prima cosa....perchè fai
Codice:
return labelSoluzione mi sembra che il metodo faccia side-effect sull'array (la variabile statica JLabel[] labelSoluzione)....insomma fai 2 cose uguali(diverse, in effetti, ma hai lo stesso risultato in fin dei conti...l'array). poi non ho il compilatore sotto mano...e sto ancora dormendo un pò.... cosa ti restitusce la chiamata generator.nextInt() un intero in quale intervallo???mi sembra che il valore assoluto proprio non servi!!!!!! e poi perchè prendi il resto della divisione per 6??? cmq quoto franksisca "emh, il codice dell'errore????" |
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Jun 2003
Città: bologna e rionero in vulture
Messaggi: 356
|
Ho risolto la cosa...ora però ho trovato un altro problema.
Non so se sapete giocare a Mastermind....io dovrei fare questo gioco. La grafica l'ho fatta, creando un jpanel bidimensionale....ora però non so come fare quando l'utente seleziona il pallino e clicca sulla colonna dove vuole mettere questo pallino....spero di essere stato chiaro.....help please!!! So che c'è il metodo mouse click.....solo che non riesco ad utilizzarlo.
__________________
Venite a bere una birra nell'angolo di zio peppino: http://www.langolodiziopeppino.forumfree.net |
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Jun 2003
Città: bologna e rionero in vulture
Messaggi: 356
|
Un aiutino per favore??
__________________
Venite a bere una birra nell'angolo di zio peppino: http://www.langolodiziopeppino.forumfree.net |
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
|
non sò giocare a mastermind, ma mi ripeto, se hai un problema, dicci qual è, che poi insieme cercheremo di risolverlo.
P.S.: è buona norma, una volta trovata una soluzione, postarla sul forum, in modo che poi tutti la possano trovare
__________________
My gaming placement |
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Jun 2003
Città: bologna e rionero in vulture
Messaggi: 356
|
Il problema l'ho postato....forse non mi sono spiegato bene, ma cmq se non sai giocare a Mastermind è difficile da spiegare...
Questo è il link di Mastermind che ho trovato su internet: http://www.irt.org/games/js/mind/index.htm In pratica dovrei fare la funzione che cliccando sul pallino (per scegliere il colore), e poi cliccando sulla griglia, la griglia si aggiorna mettendo il pallino nella posizione cliccata. Spero di essermi spiegato.....grazie mille!! p.s. il codice non l'ho postato perchè ero completamente fuori strada...
__________________
Venite a bere una birra nell'angolo di zio peppino: http://www.langolodiziopeppino.forumfree.net |
|
|
|
|
|
#13 |
|
Senior Member
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
|
prova a fare così:
metti un comboBox, o una serie di radioBox affiancati alle palline con colori, poi premi l'ok per settare la palla e blocchi la scelta. a questo punto attivi il ricettore sulla grigli, aspetti il click, a click effettuato riattivi la scelta palla. scrivi codice e posta problemi
__________________
My gaming placement |
|
|
|
|
|
#14 |
|
Senior Member
Iscritto dal: Jun 2003
Città: bologna e rionero in vulture
Messaggi: 356
|
Io in pratica ho fatto un JPanel [][] "a matrice", ed i pallini sono dei bottoni. Pensavo di fare una cosa tipo così: quando ad esempio il bottone giallo è selezionato (isEnable) , metti il pallino giallo nella posizione ad esempio JPanal[2][5].....solo che dovrei tenere conto anche di altre cose. Tipo che la partita inizia dalla riga in basso.....quindi se ad esempio l'utente clicca sulla seconda riga non deve uscire il pallino.....come posso gestire questa cosa??
__________________
Venite a bere una birra nell'angolo di zio peppino: http://www.langolodiziopeppino.forumfree.net |
|
|
|
|
|
#15 |
|
Senior Member
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
|
con questo
Codice:
if P.S.: non sto scherzando
__________________
My gaming placement |
|
|
|
|
|
#16 |
|
Senior Member
Iscritto dal: Jun 2003
Città: bologna e rionero in vulture
Messaggi: 356
|
Eh lo so....però ci sarebbero una caterva di if.....
Tu hai qualche altra soluzione???
__________________
Venite a bere una birra nell'angolo di zio peppino: http://www.langolodiziopeppino.forumfree.net |
|
|
|
|
|
#17 |
|
Senior Member
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
|
Codice:
switch Potresti pensare ad una struttuta a stati, non sò se hai presente il concetto di automa.
__________________
My gaming placement |
|
|
|
|
|
#18 |
|
Senior Member
Iscritto dal: Jun 2003
Città: bologna e rionero in vulture
Messaggi: 356
|
Ehm no.....cmq visto che dovrei mettere prima il tempo, cioè quando parte il gioco dovrebbe partire anche il tempo...tipo cronometro per vedere quanto tempo sta per risolvere il gioco....come potrei fare?? Sto provando ad usare la classe Timer.....ma quando stampo il tempo mi mette solo lo 0...senza incrementarlo....
public class Timer { long elapsedTime; long startTime; long endTime; boolean isRunning; public void Start(){ if(isRunning) return; isRunning = true; startTime = System.currentTimeMillis(); } public void Stop(){ if(!isRunning) return; isRunning = false; endTime = System.currentTimeMillis(); elapsedTime = elapsedTime + endTime - startTime; } public long getElapsedTime(){ if(isRunning) { endTime = System.currentTimeMillis(); elapsedTime = elapsedTime + endTime - startTime; startTime = endTime; } return elapsedTime; } } poi nel main gli metto questo Timer timer = new Timer(); timer.Start(); System.out.println(cr.getSecond());
__________________
Venite a bere una birra nell'angolo di zio peppino: http://www.langolodiziopeppino.forumfree.net |
|
|
|
|
|
#19 |
|
Senior Member
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
|
hai presente il concetto di thread????
cerca in giro esempi sui thread, e se proprio non ci riesci diccelo.......
__________________
My gaming placement |
|
|
|
|
|
#20 |
|
Senior Member
Iscritto dal: Jun 2003
Città: bologna e rionero in vulture
Messaggi: 356
|
Ho provato a cercare qualcosa.....ma non ho capito bene cosa vuoi dire.
__________________
Venite a bere una birra nell'angolo di zio peppino: http://www.langolodiziopeppino.forumfree.net |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 08:52.



















