Hirdetés
- Drasztikus változást mutat a Sony mobilja az első képeken
- Hatalmas telepet és fizikai ventilátort kaptak az új Oppo-k
- Tizenegyes! A VAR helyett a CAD buktatta le a Google profi játékosát
- Gyorsabb processzort igen, memóriát alig kapott a Xiaomi új HD tévéokosítója
- Ennyit szűkít az X300 Ultra a telepen Európában
- Google Pixel topik
- Drasztikus változást mutat a Sony mobilja az első képeken
- Huawei Watch Fit 3 - zöldalma
- Xiaomi 17 Ultra - jó az optikája
- VoLTE/VoWiFi
- Így lehet kiszúrni, ha kamu AirPods fülest akarnak eladni neked
- Okosóra és okoskiegészítő topik
- Honor Magic5 Pro - kamerák bűvöletében
- iPhone topik
- Milyen okostelefont vegyek?
Ú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?:))
- Google Pixel topik
- NVIDIA® driverek topikja
- OLED TV topic
- Samsung Galaxy Felhasználók OFF topicja
- Parkside szerszám kibeszélő
- Milyen billentyűzetet vegyek?
- Drasztikus változást mutat a Sony mobilja az első képeken
- Spórolós topik
- AMD vs. INTEL vs. NVIDIA
- Hitelkártyák használata, hitelkártya visszatérítés
- További aktív témák...
- MiIphone 13 Mini 128Gb-gyönyörű-100% akku
- G.Skill Aegis DDR4 16GB CL16 3200MHz Gaming Series
- Magyar menüs Saeco Picobaristo OTC tejtartállyal
- ASUS ROG Zephyrus GA503QM / Ryzen 7 5800HS / 32GB RAM / 1TB SSD / RTX 3060 / 15,6 WQHD 165Hz
- Samsung Galaxy S25 Ultra 256GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

