2009-08-17 10 views
4

Je veux changer complètement l'aspect d'un scollbar mais en surchargeant JScrollBar et la méthode paintComponent ne fonctionne pas, la piste et le pouce sont peints mais les flèches gauche et droite restent les mêmes.
Je les utilise également dans un JScrollPane et j'utilise
setHorizontalScrollBar(new CustomScrollBar()) pour définir les barres de défilement sur mes barres de défilement personnalisées mais cela ne fonctionne pas très bien, la barre de défilement horizontale ne change pas son orientation, elle ne change pas pour une barre de défilement verticale.Peinture d'un custom JScrollBar

Comment puis-je peindre un JScrollBar complètement nouveau et l'utiliser dans un JScrollPane?

Répondre

6

En un mot, vous devez sous-classer ScrollBarUI avec votre propre implémentation, puis l'enregistrer avec le UIManager. Il y a un article complet here.

+0

Cela ressemble à un bon article mais j'espérais quelque chose de plus simple. Cette méthode crée en fait une barre de défilement entièrement nouvelle, elle définit des fonctionnalités complètement nouvelles. Tout ce que je veux, c'est changer le look, le reste de la barre de défilement doit rester exactement le même. – cmann

+0

Cet article était à peu près inutile pour moi, le code ne fonctionne pas en copypastant et je ne sais pas d'où vient WindowUtils, j'ai téléchargé jna-utils et rien. –