- Rekordérdeklődés a Xiaomi hátsó kijelzője iránt
- Xiaomi 14T - nem baj, hogy nem Pro
- Huawei Watch GT 6 és GT 6 Pro duplateszt
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- iPhone topik
- Apple iPhone Air - almacsutka
- Milyen okostelefont vegyek?
- Samsung Galaxy A54 - türelemjáték
- Akciófigyelő: Komoly kedvezményekkel és ajándékokkal startol a Xiaomi 15T széria
- Xiaomi 15 - kicsi telefon nagy energiával
Ú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?:))
- Borderlands 2 Ultimate Loot Chest Limited Edition
- Bioshock Infinite Ultimate Songbird Edition
- Komplett gamer pc összerakásra vár!!Minden új bontatlan..
- Samsung Galaxy Tab S10 Ultra 14,6 Dynamic AMOLED 2X, S Pen + billentyűzet 12/256 GB
- Új Gamer PC Core Ultra 225F/245KF/265KF/RTX 5060 8Gb +11 Féle VGA/16-32Gb DDR5/500-1Tb SSD/600-850W
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X3D 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Apple iPhone Xs Max 64GB, Kártyafüggetlen, 1 Év Garanciával
- Epson Workforce DS-530II dokumentumszkenner
- BESZÁMÍTÁS! ASUS B760M i5 12400F 32GB DDR4 1TB SSD RTX 3070Ti 8GB Fractal Design R5 FSP 850W
- AKCIÓ! HP Victus Gaming 16-S0017NH 16 notebook - R5 7640HS 32GB DDR5 1TB SSD RTX 4050 6GB WIN1
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest