Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > fr.comp.lang.java > #1575
| From | Yliur <yliur@free.fr> |
|---|---|
| Newsgroups | fr.comp.lang.java |
| Subject | Re: Problème avec JTextPane et méthode paste() |
| Date | 2017-10-08 12:54 +0200 |
| Organization | Groupes francophones par TrigoFACILE |
| Message-ID | <20171008125420.3fbbaf27@free.fr> (permalink) |
| References | <59d94359$0$7165$426a34cc@news.free.fr> |
Le 07 Oct 2017 21:12:57 GMT
jp <bloiiing@yahoo.com> a écrit :
> Tout d'abord, je tiens à dire que je suis impressioné par l'activité
> des groupes sur usenet. Ça fait longtemps que je m'en étais éloigné
> et c'est un peu désertique au niveau de la fréquentation.
>
> Je vais quand-même poser ma question en espérant que quelqu'un la
> lira...
J'ai bien lu ta question, mais les mystères de Swing ce n'est pas
vraiment ma spécialité...
Sur l'imbrication des composants :
> Tout va bien sauf que dans ce cas, la scrollbar verticale n'apparait
> jamais. Je précise qu'avant j'avais fait:
>
> jtextPane = new JTextPane();
> scroll_pane = new JScrollPane(jtextPane);
> tabbedPane.addTab("JTextPane", null, jtextPane, null);
>
> Donc j'essaye autre chose selon la documentation officielle de Java:
>
> jtextPane = new JTextPane();
> scroll_pane = new JScrollPane(jtextPane);
> tabbedPane.addTab("JTextPane", null, scroll_pane, null);
Ça me paraît normal, d'après la doc de JScrollPane son constructeur
prend un composant qui sera contenu dedans ("Creates a JScrollPane that
displays the contents of the specified component [...]").
Donc la deuxième imbrication semble plus logique.
Pour ce qui est du collage, je ne l'ai jamais fait mais si je comprends
bien tu reçois un événement et en réaction à l'événement tu appelles
manuellement quelque chose comme
tabbedPane.getSelectedComponent().paste(), c'est ça ?
Sans doute avec un transtypage.
D'après la doc, getSelectedComponent est une méthode de JTabbedPane,
donc ça te permet simplement de descendre d'un niveau, c'est normal :
il y a plusieurs composants fils à ce composant et tu veux savoir
lequel est affiché. Ensuite puisque tu connais l'imbrication de tes
composants tu pourrais continuer, non ?
Par exemple, si j'ai bien compris ton imbrication :
JScrollPane scroll_pane = (JScrollPane) tabbedPane.getSelectedComponent() ;
JTextPane jtextPane = (JTextPane) scroll_pane.getComponent (0) ;
jtextPane.paste() ;
Ou bien je n'ai pas compris ton problème ?
Est-ce que tes constructions sont souvent plus complexes et tu
cherches le composant ayant le focus par exemple ? La méthode
getSelectedComponent() ne renvoie que l'onglet affiché, c'est
un cas particulier des panneaux à onglets.
Pour le focus j'ai trouvé ça, après une recherche rapide : c'est
vieux, il y a peut-être mieux maintenant...
http://baptiste-wicht.developpez.com/tutoriels/java/swing/focus/#LV
Là je pense qu'il faut préciser un peu ce que tu veux faire,
pour cibler la réponse. Par exemple comment veux-tu choisir le
composant cible du collage ?
Back to fr.comp.lang.java | Previous | Next — Previous in thread | Next in thread | Find similar
Problème avec JTextPane et méthode paste() jp <bloiiing@yahoo.com> - 2017-10-07 21:12 +0000
Re: Problème avec JTextPane et méthode paste() Yliur <yliur@free.fr> - 2017-10-08 12:54 +0200
Re: Problème avec JTextPane et méthode paste() jp <bloiiing@yahoo.com> - 2017-10-08 12:22 +0000
Re: Problème avec JTextPane et méthode paste() jp <bloiiing@yahoo.com> - 2017-10-10 14:22 +0000
csiph-web