Hirdetés
- Google Pixel topik
- iPhone topik
- Xiaomi 15T Pro - a téma nincs lezárva
- Amazfit Active 2 NFC - jó kör
- Android alkalmazások - szoftver kibeszélő topik
- Samsung Galaxy A54 - türelemjáték
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- Samsung Galaxy S26 Ultra - fontossági sorrend
- Huawei P30 Pro - teletalálat
- Nemzetközi vizekre evezett a Realme GT 7 és GT 7T
Új hozzászólás Aktív témák
-
robisz
senior tag
válasz
concret_hp
#702
üzenetére
Helló! A lényeg, hogy először egy BufferedImage objektumra kell rajzolni
(ezt a paintBuffer metódusba tettem át) és csak a kész képet rajzoljuk
át a komponensre.
import java.awt.*;
import java.awt.event.*;
public class Mozgas extends Frame {
private int poz;
private Image bufferImage;
private Graphics bufferGraphics;
public Mozgas() {
super(''Mozgas'');
setSize(500,500);
setBackground(new Color(192,192,192));
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
}
public void paint(Graphics g){
if(bufferGraphics==null){
bufferImage = createImage (this.getSize().width, this.getSize().height);
bufferGraphics = bufferImage.getGraphics();
}
bufferGraphics.clearRect(0,0,this.getSize().width, this.getSize().height);
//calls the paintbuffer method with
//the offscreen graphics as a param
paintBuffer(bufferGraphics);
//we finaly paint the offscreen image onto the onscreen image
g.drawImage(bufferImage,0,0,this);
}
public void paintBuffer(Graphics g){
g.setColor(new Color(255,255,0));
g.fillRect(50,50,400,400);
g.setColor(new Color(0,0,255));
g.fillRect(50+poz,50+poz,50,50);
}
public void update(Graphics g) {
paint(g);
}
public void vandorol() {
for (int c = 1; c < 350; c++) {
try {
Thread.sleep(10);
} catch (InterruptedException e) {
}
poz++;
repaint();
}
}
public static void main(String[] args) {
Mozgas mw = new Mozgas();
mw.setVisible(true);
mw.vandorol();
}
}
Saját komponenst egyébként a Component vagy a Canvas osztályból szokás
származtatni, de egy ilyen kis példa esetén így is megteszi.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- BESZÁMÍTÁS! MSI B650 R5 9600X 32GB DDR5 1TB SSD RX 9070XT 16GB Lian Li LANCOOL II Mesh C RGB 750W
- BESZÁMÍTÁS! Gigabyte B450M R5 3600 16GB DDR4 512GB SSD GTX 1070 8GB Zalman S3 Chieftec 700W
- BESZÁMÍTÁS! Gigabyte B360M i5 8400 16GB DDR4 512GB SSD RTX 2070 8GB RAMPAGE Shiva Adata 600W
- BESZÁMÍTÁS! Gigabyte B450M R5 2600 16GB DDR4 256GB SSD GTX 1060 6GB Formula Air Mesh G3 Chieftec500W
- Galaxy S25 SM-S931BLBHEUE - 512 GB - Jeges Kék - Icyblue - Kizárólag a Samsungnál elérhető szín
- Apple AirPods Max Midnight ! Új Bontatlan / 2028.03.16-ig Garancia!
- PlayStation 5 Slim (lemezes) + kontroller 2027.12.24-ig garancia, számlával!
- Bomba ár! Lenovo ThinkPad T470s - i5-6GEN I 8GB I 256SSD I 14" FHD I HDMI I Cam I W11 I Gari!
- AKCIÓ! Inno3D iChill X3 RTX 3080 Ti 12GB videokártya garanciával hibátlan működéssel
- Gamer PC! i9-9900K / RTX 3060 Ti / Z390 / 16GB DDR4 / 500GB SSD / 850w!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

