- Felpúposodott egy Galaxy Ring, a Samsung besegített
- iOS alkalmazások
- Samsung Galaxy S25 - végre van kicsi!
- Harmadjára is bemutatta ugyanazt a Huawei
- Samsung Galaxy S24 - nos, Exynos
- Rekordérdeklődés a Xiaomi hátsó kijelzője iránt
- Fotók, videók mobillal
- One mobilszolgáltatások
- Apple iPhone 17 Pro Max – fennsík
- Milyen okostelefont vegyek?
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Geri Bátyó: Agglegénykonyha 7 – Még egy megosztó – de gyors – étel: resztelt máj
- Magga: PLEX: multimédia az egész lakásban
- GoodSpeed: Windows 11 - HP Pavilion – 15 cc516nh (2LE41EA) laptopon Intel I3-7100U TPM2.0
- gerner1
Ú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?:))
- Lenovo ThinkPad X1 Carbon Gen9: i7-1185G7/32GB/1TB NVMe SSD/14"FHD IPS, Matt/Win 11Pro
- Hibátlan Lenovo P14s Gen5 AMD Ryzen 5 8540U /16GB 512GB SSD/HUN BILL
- HP USB-C Dock G5 (HSN-IX02) ÁFÁ-s
- Bomba ár! Dell Latitude 5580 - i5-7GEN I 16GB I 256SSD I 15,6" FHD I HDMI I CAM I W11 I Garancia
- Bomba ár! Lenovo ThinkPad Yoga 260 - i5-G6 I 8GB I 192SSD I 12,5" FHD Touch I W10 I Cam I Gari!
- Bomba ár! Lenovo ThinkPad T450 - i5-5GEN I 8GB I 240SSD I 14" HD+ I Cam I W10 I Garancia!
- HIBÁTLAN iPhone 14 128GB Purple -1 ÉV GARANCIA - Kártyafüggetlen, MS3528, 93% Akkumulátor
- GYÖNYÖRŰ iPhone 13 Pro 256GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3359
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 16/32/64GB RAM RTX 3060 12GB GAMER PC termékbeszámítással
- Referencia Weboldallal Világítós bill+laptop bill magyarítás. Rania 3M -is! Touchpadok is.Posta ok
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest