Hirdetés
- OLED TV topic
- Hobby elektronika
- Samsung Galaxy Tab S11 - tizenegyes
- Hogyan verte le egy telefon chip az egész laptop ipart? – x86 vs ARM
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- 5V BOOST-os ASRock PRO tápok jöttek a középkategóriába
- Épített vízhűtés (nem kompakt) topic
- Milyen asztali médialejátszót?
- Bluetooth hangszórók
- LG LCD és LED TV-k
Új hozzászólás Aktív témák
-
Fenyo12
tag
Sziasztok!
Alap Java programozásban kérnék segítséget. (most tanulom)
Ez volt az alap, amiből indultam. (a SunAndCloud)
Az alapképernyőt megnövetlem és még egy képet betettem a nap mellé, ami előtűnik a felhő mögül.
A beszúrt objektumot meg szeretném forgatni a középpontja körül úgy, hogy a nap ne mozduljon meg.
Egy FOR ciklussal próbáltam, de szerintem eleve szintaktikai bajai is vannak.
Tudna valaki ebben segíteni?
A forgatást akkor kéne elkezdeni, amikor az 'alpha' változóm elérte a nullát, mert ez jelzi, hogy az áttűnés befejeződött.
Eddig működik jól, innen kéne valahogy beletenni a forgatást:package com.zetcode;
import java.awt.AlphaComposite;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.image.BufferedImage;
import javax.swing.ImageIcon;
import javax.swing.JPanel;
import javax.swing.Timer;
class Surface extends JPanel implements ActionListener {
private Image sun;
private Image cloud;
private Image bee;
private Timer timer;
private float alpha;
public Surface() {
loadImages();
initTimer();
}
private void loadImages() {
sun = new ImageIcon("sun.png").getImage();
cloud = new ImageIcon("cloud2.png").getImage();
bee = new ImageIcon("bee_3m.png").getImage();
}
private void initTimer() {
timer = new Timer(300, this);
timer.start();
alpha = 1f;
}
private void doDrawing(Graphics g) {
Graphics2D g2d = (Graphics2D) g;
BufferedImage buffImg = new BufferedImage(640, 480,
BufferedImage.TYPE_INT_ARGB);
Graphics2D gbi = buffImg.createGraphics();
AlphaComposite ac = AlphaComposite.getInstance(AlphaComposite.SRC_OVER, alpha);
gbi.drawImage(sun, 40, 30, null);
gbi.drawImage(bee, 350, 180, null);
gbi.setComposite(ac);
gbi.drawImage(cloud, 25, 50, 576, 301, this);
g2d.drawImage(buffImg, 20, 20, null);
}
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
doDrawing(g);
}
@Override
public void actionPerformed(ActionEvent e) {
alpha -= 0.05;
if (alpha <= 0) {
alpha = 0;
timer.stop();
System.out.println("Jelenet vége.");
}
repaint();
}
}
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Dell Latitude 5580,15.6",FHD,i5-6300U,8GB DDR4,256GB SSD,WIN11
- LG UltraWide 35WN75CP IPS Monitor! sRGB 99% / 3440x1440 / 100Hz / 5 ms / FreeSync! BeszámítOK!
- Csere-Beszámítás! Asus Tuf FX506I Gamer Notebook! R7 4800H / 1650Ti / 16GB DDR4 / 512GB SSD
- ÁRGARANCIA! Épített KomPhone i5 12400F 16/32/64GB RAM RTX 5060 8GB GAMER PC termékbeszámítással
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

