2010-02-26 6 views
1

J'ajoute une barre d'outils à mon application et j'ajoute actuellement des boutons à bascule à la barre d'outils. Je n'aime pas utiliser le JButton par défaut car il est gros et maladroit (même si j'enlève les marges). Existe-t-il des bibliothèques pour créer facilement des barres d'outils et des boutons de barre d'outils qui semblent plus natifs? En particulier, je voudrais que les boutons semblent plats à moins que l'utilisateur ne les survole ou qu'ils soient sélectionnés (comme dans Eclipse).Boutons de la barre d'outils Swing

, merci Jeff

Répondre

8

Au lieu d'ajouter le JButton directement à la barre d'outils, créer une action et ajouter l'action au lieu.

La barre d'outils créera un JButton approprié qui semble correct.

En outre, définissez toolbar.setRollover (true), ce qui rendra tous les boutons plats, sauf lorsque la souris est dessus.

Oh, et si vous ne voulez pas qu'il soit flottable, définissez toolbar.setFloatable (true).

Ces trois choses, et avec une bonne L & F, la barre d'outils ressemble généralement très professionnel

D'une manière générale, nous ne devrions pas bidouiller avec le bouton nous-mêmes marges à moins que nous essayons de faire quelque chose d'extrêmement personnalisée .

+0

Je suppose que je n'ai pas essayé cela parce que l'API dit que ce n'est pas la meilleure façon de le faire. Si j'ai besoin de bascules, dois-je écrire un "ActionGroup" personnalisé (similaire à un groupe de boutons sauf pour les actions)? –

+1

Si vous utilisez Java 6+, vous n'avez rien à écrire. L'action standard fonctionnerait. Lisez à propos de la propriété de composant "selected" d'Action à l'adresse http://java.sun.com/javase/6/docs/api/javax/swing/Action.html –

+0

True. La partie que j'ai laissée de côté est que j'ai besoin qu'ils s'excluent mutuellement. Bien que ce code ne devrait pas être difficile à écrire. Merci. –

Questions connexes