Bonsoir à tous,
Je souhaiterai zoomer dezoomer sur mon Jlayeredpane.
Il me semble qu'il faudrait que j'override la méthode
paintComponent(Graphics g);
qui n'est pas disponible pour les Jlayeredpane.
J'ai essayé ça sinon :
Cependant en faisant cela je n'arrive à zoomer que sur un seul layer.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 JLayeredPane lp = lpList.get(this.tabbedPane.getSelectedIndex()); double zoom = zList.get(this.tabbedPane.getSelectedIndex()); zoom = zoom + 0.003; zList.set(this.tabbedPane.getSelectedIndex(), zoom); double z = zoom * zoom; double currWidth = lp.getComponent(lp.getComponentCount() - 1).getWidth() * z; double currHeight = lp.getComponent(lp.getComponentCount() - 1).getHeight() * z; z = Math.max(0, z - 0.03 * e.getWheelRotation()); // en enlevant le getComponent(0) il ne se passe rien du tout.. lp.getComponent(0).setBounds((this.width - (int)currWidth) / 2, (this.height - (int)currHeight) / 2, (int)currWidth, (int)currHeight); lp.repaint();
Est-ce qu'il y a une solution alternative à cela?
Merci à vous!
Partager