Création d'une fenetre avec ascenseurs

cs_r3m1 Messages postés 20 Date d'inscription dimanche 27 octobre 2002 Statut Membre Dernière intervention 21 février 2003 - 11 févr. 2003 à 19:54
cs_Duss Messages postés 890 Date d'inscription lundi 8 avril 2002 Statut Membre Dernière intervention 29 juillet 2004 - 17 févr. 2003 à 20:37
:question)
Encore une question de débutant...
Comment faire pour mettre des ascenseurs sur une JFrame?
En sachant que au lancement du prog, la JFrame est ouverte en "plein ecran" (on recupere la resolution de l'ecran puis on fait un setSize avec ces dimensions), mais qu'on peut la réduire.(D'ailleurs en passant si vous savez comment lancer la fenetre en plein écran directement parce que là elle est en plein écran mais on peut cliker sur "Agrandissement" ce qui est un peu hmm..débile? :D

A l'interieur de la fenetre, il y a plusieurs objets (JPanels, JButtons, etc...) tous placés non pas avec un Layout Manager mais en utilisant la methode setLocation.
Tout ce que j'ai vu pour l'instant au sujet des scrollpane c qu'il faut les ajouter comme un composant "ordinaire",dans un layout manager par exemple un BorderLayout,mais pour mon appli il est nécéssaire de ne pas avoir de Layout manager (en fait aucun n'est vraiment adapté a ce que je veux, meme en en combinant plusieurs)

En fait ma question c'est: est il possible de creer une JFrame qui contient directement les ascenseurs, qui pourraient par exemple etre invisibles lorsque la fenetre est en plein écran, mais apparaitre lorsque celle ci est réduite! (ouf..)
Je ne pense pas que ce soit trop difficile,mais je bloque :(

Rémi

4 réponses

cs_Duss Messages postés 890 Date d'inscription lundi 8 avril 2002 Statut Membre Dernière intervention 29 juillet 2004 11
12 févr. 2003 à 09:11
Salut,

a mon avis, le mieux que tu ai a faire, c'est de mettre un JPanel dans un JScrollPane et mettre le scroll en fond de ta frame.
Apres, tu poses tes autres composants dessus !!
Pour ce qui est du redimensionnement, un scrollpane n'affiche ses barres que au besoin.

Duss
0
cs_r3m1 Messages postés 20 Date d'inscription dimanche 27 octobre 2002 Statut Membre Dernière intervention 21 février 2003
17 févr. 2003 à 17:30
J'ai essayé un truc différent:

J'ai une classe definie comme suit:
Agidici extends JPanel
Dans le constructeur je fais:

JScrollPane s = new JScrollPane();
getContentPane().add(s);
s.setLayout(null; (le null c'est voulu)

Puis j'ajoute les composants de ma fenetre en faisant
s.add(truc).
Ca marche bien, je vois tous mes composants a leur place comme je les avait definis au debut en les ajoutant dans la fenetre.Mon probleme, c'est que je n'ai jamais les barre scroll!
Normalement, en plein ecran, ma fenetre affiche tous ses composants, et n'a pas besoin de scroll, mais reduite, elle devrait m'en afficher. Comment faire comprendre a la scrollbar la taille idéale de la fenetre, et lui dire d'ajouter les scrolls quand cette taille a changer?

J'ai essayé un setPreferredSize dans le constructeur de la fenetre mais je me fais jeter a chaque fois!

Agidici.java:236: cannot resolve symbol
symbol : method setPreferredSize (java.awt.Dimension)
location: class java.awt.Container
getContentPane().setPreferredSize(dim);
0
cs_r3m1 Messages postés 20 Date d'inscription dimanche 27 octobre 2002 Statut Membre Dernière intervention 21 février 2003
17 févr. 2003 à 17:32
RECTIFICATION !!

Ma classe Agidici extends JFrame et non JPanel
0
cs_Duss Messages postés 890 Date d'inscription lundi 8 avril 2002 Statut Membre Dernière intervention 29 juillet 2004 11
17 févr. 2003 à 20:37
essayes de faire un

tonScroll.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);


Duss
0
Rejoignez-nous