Bonjour à toutes et à tous,

Dans une application, je veux ouvrir une fenêtre dans laquelle s'affiche une image et je souhaite que, lorsque la fenêtre est plus petite que l'image, on voit les ascenseurs correspondants.

Dans une méthode, j'ai écrit le bout de code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
JInternalFrame fenetreImg = new JInternalFrame("YYYYY");  // un nouveau JInternalFrame
add(fenetreImg); // je l'ajoute dans ma fenêtre principale
CadreImg cadreImg = new CadreImg("");  // un nouveau JPanel avec une image de 1024 x 768
JScrollPane cdrImg = new JScrollPane(); // un nouveau JscrollPane
fenetreImg.add(cdrImg); // je la place dans le nouveau JInternalFrame créé ci-dessus
cdrImg.setViewportView(cadreImg); // je place mon image dans le JScrollPane
cdrImg.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED);
cdrImg.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
fenetreImg.setBounds(10, 10, 320, 240);
fenetreImg.setResizable(true);
fenetreImg.setVisible(true);
Résultat :
J'ai bien une fenêtre aus dimensions voulues dans laquelle s'affiche l'image (trop grande), mais je n'ai point d'ascenseur. Qu'est-ce qui ne va pas, que dois-je faire.

NOTA : la taille du JScrollPane s'ajuste à la taille du JInternalFrame lorsque je redimensionne ce dernier. (je l'ai vu en plaçant une bordure sur le JScrollPane).

Merci de votre aide.

Pierre