- Csíkszélességben verné az Exynos 2600 a Snapdragon 8 Elite 2-t
- Mobil flották
- Honor 200 - kétszázért pont jó lenne
- Fotók, videók mobillal
- Yettel topik
- Íme az új Android Auto!
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Android alkalmazások - szoftver kibeszélő topik
- 65 órányi zenét ígér az Audio-Technica új TWS fülese
- Apple iPhone 16 Pro - rutinvizsga
Új hozzászólás Aktív témák
-
Zulfaim
csendes tag
kicsit haladtam, most az a baj, hogy nem mindegyik egérkattintást észleli.
public class Labda extends Applet implements Runnable, MouseListener
{
private int w,h;
private double dx, dy;
private int x, y;
private Graphics offGraphics; // háttérgrafika
private Image offImage; // háttérkép
private Image labda;
private Thread animator=null;
boolean stopFlag;
public void init(){
offImage=createImage(400,400); // a háttérkép létrehozása
offGraphics=offImage.getGraphics();
labda=getImage(getDocumentBase(),"labda.jpg");
x=200;
y=200;
// indulási pozíció
dx=0;
dy=10; // indulási lépéstáv
setSize(400,400);
setBackground(Color.white);
addMouseListener(this);
}
public void start() { // a szál indítása
animator=new Thread(this);
stopFlag=false;
animator.start();
}
public void run() {
while(true) {
if (stopFlag) // ha megállt az animáció
break;
try {
Thread.sleep(50); // 0,2 másodperces várakozás
}
catch (InterruptedException ex){}
w = labda.getWidth(this); // a labda méretei
h = labda.getHeight(this);
if ((x+w+dx)>400 || (x+dx)<0)
dx=-dx * 0.6; // x irányváltás
if ((y+h+dy)>400 || (y+dy)<0)
dy=-dy * 0.6; // y irányváltás
// léptetés
x += dx;
y += dy;
dy += 1.2;
repaint();
}
}
public void stop() { // a szál törlése
stopFlag = true;
animator = null;
}
// kettőspuffer
public void paint(Graphics g) {
int h = getSize().height;
int w = getSize().width;
offGraphics.setColor(Color.white);
offGraphics.fillRect(0,0,w,h); // a rajzlap törlése
offGraphics.drawImage(labda,x,y,this);
g.drawImage(offImage,0,0,this);
}
// egérkattintáskor módosítjuk a lépéseket - irányváltás
public void mouseClicked(MouseEvent e){
/*int dxx,dyy;
dxx = e.getX()-x;
dyy = e.getY()-y;*/
if ( Math.sqrt ( Math.pow (e.getX() - (x + w/2), 2) + Math.pow (e.getY() - (y + w/2), 2)) < w)
{
dy += -20;
dx += (x+w/2) - e.getX();
}
}
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
public void mousePressed(MouseEvent e){}
public void mouseReleased(MouseEvent e) {}
} -
Zulfaim
csendes tag
Szevasztok!
Egy dekázós appletet szeretnék írni, de valahogy nem sikerül megvalósítanom a következőket:
-legyen gravitáció
-ha a labda bal oldalára kattintok, akkor jobbra, ha a jobb oldalára kattintok akkor balra elpattanjonEddig így néz ki a kódom:
import java.awt.*;
import java.applet.*;
import java.awt.event.*;
public class Labda extends Applet implements Runnable, MouseListener
{
private int dx,dy,w,h;
private int x, y;
private Graphics offGraphics; // háttérgrafika
private Image offImage; // háttérkép
private Image labda;
private Thread animator=null;
boolean stopFlag;
public void init(){
offImage=createImage(400,400); // a háttérkép létrehozása
offGraphics=offImage.getGraphics();
labda=getImage(getDocumentBase(),"labda.jpg");
x = y = 150; // indulási pozíció
dx =0;
dy = 20; // indulási lépéstáv
setSize(400,400);
setBackground(Color.white);
addMouseListener(this);
}
public void start() { // a szál indítása
animator=new Thread(this);
stopFlag=false;
animator.start();
}
public void run() {
while(true) {
if (stopFlag) // ha megállt az animáció
break;
try {
Thread.sleep(100); // 0,1 másodperces várakozás
}
catch (InterruptedException ex){}
w = labda.getWidth(this); // a labda méretei
h = labda.getHeight(this);
if ((x+w+dx)>400 || (x+dx)<0)
dx=-dx; // x irányváltás
if ((y+h+dy)>400)
dy=-dy;
if ((y+dy)<0)
{
dy=-dy; // y irányváltás
y-=10;
}
// léptetés
x += dx;
y += dy;
repaint();
}
}
public void stop() { // a szál törlése
stopFlag = true;
animator = null;
}
// kettőspuffer
public void paint(Graphics g) {
int h = getSize().height;
int w = getSize().width;
offGraphics.setColor(Color.white);
offGraphics.fillRect(0,0,w,h); // a rajzlap törlése
offGraphics.drawImage(labda,x,y,this);
g.drawImage(offImage,0,0,this);
}
// egérkattintáskor módosítjuk a lépéseket - irányváltás
public void mouseClicked(MouseEvent e){
int dxx,dyy;
dxx = e.getX()-x;
dyy = e.getY()-y;
if((Math.abs(dxx)<=w/2) && (Math.abs(dyy)<=h/2))
{
y += -30;
}
}
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
public void mousePressed(MouseEvent e){}
public void mouseReleased(MouseEvent e) {}
} -
Zulfaim
csendes tag
Mi jövő félévben fogjuk tanulni(BME), nem akarok 0-ról kezdeni.
-
Zulfaim
csendes tag
Honnan érdemes elkezdeni Java-t tanulni?
Valaki tud esetleg valami jó könyvet?
Új hozzászólás Aktív témák
Hirdetés
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- One otthoni szolgáltatások (TV, internet, telefon)
- exHWSW - Értünk mindenhez IS
- Hobby elektronika
- Autós topik
- OLED, Mini-LED, IPS, VA, TN - melyik panelt válaszd 2025-ben?
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- 3D nyomtatás
- Milyen videókártyát?
- IGP nélküli processzorokkal készül az Intel és az AMD
- Csíkszélességben verné az Exynos 2600 a Snapdragon 8 Elite 2-t
- További aktív témák...
- Eladó konfig! Ryzen 7 7800X3D 2TB SSD 64GB DDR5 RX9070XT 16GB!
- Új, makulátlan állapotú Samsung Galaxy Buds FE, fehér, fél év garancia
- Új, makulátlan állapotú Samsung Galaxy Watch7 44mm ezüst, 2 év garancia
- Új, makulátlan állapotú Samsung Z Fold 6 256GB Tengerészkék, független, 2 év garancia
- Használt TP-Link Deco M4 - AC1200 Router (Mesh-ként is használható)
- BESZÁMÍTÁS! Asus TUF B450M R5 5600X 32GB DDR4 512GB SSD RTX 3060 XC 12GB Rampage SHIVA Chieftec 600W
- iKing.Hu - Honor Magic 7 Pro - Black - Használt, karcmentes
- ÁRCSÖKKENTÉS Lenovo ThinkPad T570, T580, P51s, P52s eredeti Lenovo, belső akkumulátor eladó
- Telefon felvásárlás!! Xiaomi Redmi Note 13, Xiaomi Redmi Note 13 Pro, Xiaomi Redmi Note 13 Pro+
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5800X 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged