Komma åt slumpad bild!|Programmering / Grafisk formgivning|Forum|Nordichardware

Search
Forum Scope


Match



Forum Options



Minimum search word length is 3 characters - maximum search word length is 84 characters
Lost password?
The forums are currently locked and only available for read only access
sp_Feed sp_TopicIcon
Komma åt slumpad bild!
pompougnac
Member
Medlem
Forum Posts: 3109
Member Since:
January 20, 2003
sp_UserOfflineSmall Offline
1
May 28, 2007 - 8:51 pm
sp_Permalink sp_Print

Hejsan allihopa.
Sitter och dammar av gamla javagrunder i brist på annat att göra, håller på att skriva ett sten-sax-påse spel där SSP.java är huvudklassen med main() etc, samt en klass till är RandomBild.java som genom en swing timer som går igenom 3 bilder som stoppas när man trycker på stoppknappen.

Problemet jag har är att jag i SSP.java vill skriva ett if-statement som säger att (pseudokod):


if bilden_som_visas_efter_stopp_i_RandomBild.java == sten.jpg {exekvera denna kod}
else if bilden_som_visas_efter_stopp_i_RandomBild.java == sax.jpg
{exekvera denna kod}
else {exekvera påse-kod}

Jag vill alltså att en viss kod skall exekveras beroende på om bilden som visas när man tryckt på stoppknappen är sten, sax eller påse etc.

Problemet jag har är att jag inte vet hur jag skall komma åt det som visas i if-statementet... vad jag ska sätta på vardera sida == helt enkelt.

Här är RandomBild.java (tog bort import-koden):


public class RandomBild extends JLabel implements ActionListener {
public javax.swing.Timer tim = new javax.swing.Timer(10, this);

public Icon sten = new ImageIcon("sten.jpg");
public Icon sax = new ImageIcon("sax.jpg");
public Icon påse = new ImageIcon("påse.jpg");

Icon[] jFlt = {sten, sax, påse};

public void start(){
tim.start();
}
public void stop(){
tim.stop();
}
public void actionPerformed(ActionEvent e) {
Util.slumpOrdning(jFlt);
setIcon(jFlt[1]);
}
}

Tacksam för hjälp!

Coore
Member
Medlem
Forum Posts: 6002
Member Since:
January 4, 2001
sp_UserOfflineSmall Offline
1140144
May 30, 2007 - 1:50 pm
sp_Permalink sp_Print

Varför har du en timer etc för att slumpa fram en bild?
Varför inte bara slumpa fram ett värde, 0 till 2, ta det värdet och låta det vara index i arrayen som innehåller "sten.jpg", "sax.jpg" och "påse.jpg"?

pompougnac
Member
Medlem
Forum Posts: 3109
Member Since:
January 20, 2003
sp_UserOfflineSmall Offline
1140179
May 30, 2007 - 3:56 pm
sp_Permalink sp_Print

Coore wrote: Varför har du en timer etc för att slumpa fram en bild?
Varför inte bara slumpa fram ett värde, 0 till 2, ta det värdet och låta det vara index i arrayen som innehåller "sten.jpg", "sax.jpg" och "påse.jpg"?

mest för att jag vill se "slumpningen" i applikationen dvs den bläddrar igenom bilderna med 10 millisekunders mellanrum.. om detta går att lösa utan swingtimer så hade det vart jättebra..

Coore
Member
Medlem
Forum Posts: 6002
Member Since:
January 4, 2001
sp_UserOfflineSmall Offline
1140184
May 30, 2007 - 4:15 pm
sp_Permalink sp_Print

Ja, det borde inte vara några problem att lösa det utan en swingtimer.
Jag har inte kodat java på länge, så här är lite psuedokod:

while(!tryckt)
{
i = random(0-2);
showimage(array[i]);
wait(10ms);
}

pompougnac
Member
Medlem
Forum Posts: 3109
Member Since:
January 20, 2003
sp_UserOfflineSmall Offline
1140185
May 30, 2007 - 4:18 pm
sp_Permalink sp_Print

Tack så mycket för hjälpen, ska testa detta strax!

Forum Timezone: Europe/Stockholm
Most Users Ever Online: 694
Currently Online:
Guest(s) 58
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Andreas Galistel: 16287
Jonas Klar: 15897
ilg@dd: 10810
Nyhet: 10607
Mind: 10550
Ctrl: 10355
Gueno: 9881
Guest: 9344
Snorch: 8881
Callister: 8468
Newest Members:
PetrbonFU PetrbonFU
Karine Bembry
Dolores Mcdaniels
Anibal McLeish
Francisca Alt
Alfie Everhart
Lester Huitt
Orlando Jorgensen
Mikki Lundgren
Dakota Kozlowski
Forum Stats:
Groups: 11
Forums: 59
Topics: 146630
Posts: 1300967

 

Member Stats:
Guest Posters: 2
Members: 79425
Moderators: 0
Admins: 11
Administrators: nordicadmin, Henrik Berntsson, Anton Karmehed, Carl Holmberg, Joel Oscarsson, Mikael Linnér, Mikael Schwartz, Andreas Paulsson, Nickebjrk, Mattias Pettersson, EmxL