Hirdetés
- Több száz játékban kezdi meg karrierjét az FSR Redstone
- Házimozi belépő szinten
- Milyen alaplapot vegyek?
- Milyen egeret válasszak?
- Természetből eredő gyökerekhez tér vissza a Keychron
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Gaming notebook topik
- Milyen RAM-ot vegyek?
- Apple asztali gépek
- Monitorkalibráló eszközök
Új hozzászólás Aktív témák
-
Alvin_ti4200
félisten
válasz
Lortech
#1127
üzenetére
van két osztályom (a harmadik nem érdekes):
SPRITECANVAS.JAVA
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.*;
import java.util.*;public class SpriteCanvas extends GameCanvas{
public Command exitCommand;
public Sprite1 sprite;BackgroundLayer bgLayer;
LayerManager lm;public SpriteCanvas() throws java.io.IOException {
super(false);exitCommand=new Command("Kilépés",Command.EXIT,0);
addCommand(exitCommand);sprite=new Sprite1();
sprite.setPosition(25,50);
bgLayer=new BackgroundLayer();
lm=new LayerManager();
lm.append(sprite);
lm.append(bgLayer);
}void render(){
Graphics g=getGraphics();g.setColor(255,255,255);
g.fillRect(0,0,getWidth(),getHeight());int dx=0,dy=0;
int[] tomb1={25,85,145,25,85,145,25,85,145};
int[] tomb2={50,50,50,110,110,110,170,170,170};
Random rnd=new Random();
int veletlen=rnd.nextInt(8);
dx=tomb1[veletlen];
dy=tomb2[veletlen];
sprite.next(dx,dy,getWidth(),getHeight(),veletlen);lm.paint(g,0,0);
flushGraphics();}
}SPRITE1.JAVA
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.*;
import java.util.*;public class Sprite1 extends Sprite{
static final int width=60;
static final int height=60;public int mode=0;
static Random rnd=new Random();
static int[] frame_sequence_1={0,1,2,3,4,5,6,7,8};int framecount=0;
public Sprite1() throws java.io.IOException{
super(Image.createImage("/hello/gomb2.png"),width,height);
setFrameSequence(frame_sequence_1);
}public void next(int dx, int dy, int maxX, int maxY, int randomize){
setPosition(dx,dy);
setFrame(randomize);
}
}A lényeg az lenne, hogy a render vagy next hivások között legyen monjuk egy másodpercnyi idő, amíg a lenyomott gombot (még nincs deklarálva) meg tudom vizsgálni, hogy mi volt az. Apropó létezik olyan függvény, amely a lenyomott gomb kódját adja vissza integerben? Mert keyPressed(int number) függvény van, csak az akkor fut le, ha az adott gombot nyomom meg, nekem meg pont fordítva kéne, hogy lenyomás után el tudjam dönteni, hogy melyik számú (49-57 [KEY_NUM1-KEY_NUM9]) gomb volt az és ennek megfelelően csinálni egy szép nagy case elágazást.
A MainMidlet osztályban az egyik menüponthoz hozzárendeltem ezt az eseményt:
try{
spritecanvas=new SpriteCanvas();
spritecanvas.setCommandListener(this);
Display.getDisplay(this).setCurrent(spritecanvas);
thread=new Thread(this);
thread.start();
} catch (IOException E){
destroyApp(true);
}A Runnable interfész miatt kell bele még egy Run metódus is, ezt a Midlet legvégére szúrtam be és így néz ki:
public void run(){
try{
while((thread.isAlive())&&(spritecanvas!=null)){
spritecanvas.render();
thread.sleep(1000);}
} catch (InterruptedException E1){}
}
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Több száz játékban kezdi meg karrierjét az FSR Redstone
- Milyen routert?
- Bestbuy játékok
- Házimozi belépő szinten
- Filmvilág
- CADA, Polymobil, és más építőkockák
- Milyen alaplapot vegyek?
- Milyen egeret válasszak?
- Digitális Állampolgárság Program DÁP
- TGA2025 - Lara Croft felbukkanása már szinte borítékolt
- További aktív témák...
- Bomba ár! Dell Latitude E7450 - i7-5GEN I 8GB I 256SSD I 14" FHD Touch I HDMI I Cam I W10 I Gari!
- Corsair Vengeance White RGB 2x16Gb 6000 cl36 bontatlan/új eladó (XMP/Expo)
- Dell Latitude 7290- I5 7 gen - 8Gb -256Gb
- Nikon D750 + 50mm f/1.4G + 24-120mm f/4G + Lowepro Mini Trekker AW szett
- GAMER PC - TUF B450, Ryzen5 5600x, Rtx 3070 8gb, 32gb DDR4, 1 TB Nvme
- HP Thunderbolt-dokkoló, 120W G4 (4J0A2AA)
- Telefon felvásárlás!! iPhone 11/iPhone 11 Pro/iPhone 11 Pro Max
- GYÖNYÖRŰ iPhone XR 128GB Black-1 ÉV GARANCIA - Kártyafüggetlen, MS3985, 100% Akkumulátor
- ÚJ Xiaomi Mi Robot Vacuum Mop Essential robotporszívó feltörlő 2db 1999 Ft
- Samsung Galaxy Tab A8 32GB, Újszerű, 1 Év Garanciával
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


