hallo
ich zeichne auf meiner GlassPane einen timer-gesteuerten effekt sobald der user auf einen button geklickt hat (icon der schaltfläche wird immer grösser und durchsichtiger, bis sie schliesslich ganz verschwindet ... iZoom für wen's ein begriff ist )
funktioniert alles ganz prächtig. nur habe ich jetzt das problem, dass sobald mein JFrame maximiert ist, die animation extrem ruckelig von statten geht.
habe das clipping bereits nur auf meinen animationsbereich gelegt. hat keine änderung gebracht.
SCALE_FAST hat ebenfalls nix geändert.
hat jemand eine idee wie ich das problem lösen könnte?
vielen dank & grüsse
m@nu
ich zeichne auf meiner GlassPane einen timer-gesteuerten effekt sobald der user auf einen button geklickt hat (icon der schaltfläche wird immer grösser und durchsichtiger, bis sie schliesslich ganz verschwindet ... iZoom für wen's ein begriff ist )
funktioniert alles ganz prächtig. nur habe ich jetzt das problem, dass sobald mein JFrame maximiert ist, die animation extrem ruckelig von statten geht.
habe das clipping bereits nur auf meinen animationsbereich gelegt. hat keine änderung gebracht.
Code:
protected void paintComponent(Graphics g) {
if(timer != null && timer.isRunning()) {
Point p = SwingUtilities.convertPoint(src.getParent(), src.getLocation(), glassPane);
int x = p.x - (cycle*stepSize)/2;
int y = p.y - (cycle*stepSize)/2;
int newWidth = imageWidth + (cycle*stepSize);
int newHeight = imageHeight + (cycle*stepSize);
float alpha = 1.0f - cycle/10f;
Graphics2D g2 = (Graphics2D)g;
g2.setClip(x, y, newWidth, newHeight);
Image resized = image.getScaledInstance(newWidth, newHeight,
Image.SCALE_SMOOTH);
g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, alpha));
g2.drawImage(resized, x, y, null);
}
}
SCALE_FAST hat ebenfalls nix geändert.
hat jemand eine idee wie ich das problem lösen könnte?
vielen dank & grüsse
m@nu