L'aspect et la convivialité de Windows pour JFileChooser
Je suis en train de générer un JFileChooser
qui a le Windows look-and-feel. Je ne pouvais pas trouver une méthode pour changer, j'ai donc créé une classe de base qui s'étend JFileChooser
que les changements de l'INTERFACE utilisateur avec le code suivant:
public FileChooser(){
this(null);
}
public FileChooser(String path){
super(path);
try {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
} catch (Exception e) { System.err.println("Error: " + e.getMessage()); }
Puis, dans une autre classe, j'appelle
FileChooser chooser = new FileChooser(fileName);
int val = chooser.showOpenDialog(null);
mais la boîte de dialogue qui vient a la Java look and feel. Des idées sur comment faire pour changer cela? Est-il une méthode de la classe JFileChooser que je peux utiliser à la place de cette extension de la classe?
Merci!
source d'informationauteur chama
Vous devez vous connecter pour publier un commentaire.
Si vous n'avez pas besoin de changer le Look and Feel, pourriez-vous essayer de mettre la UIManager.setLookAndFeel(..) dans la méthode main de votre entrée en classe?
Qui semble fonctionner pour moi, si je suis à une perte pour expliquer pourquoi il ne fonctionne pas de la manière que vous l'avez défini upt.
Je sais que vous pouvez définir l'aspect et la convivialité pour l'ensemble de l'application, mais que faites-vous si vous aimez la croix-plate-forme regarder et sentir, mais le Système Look and Feel pour le JFileChoosers. Surtout depuis que la croix-plate-forme n'a pas même le droit icônes de fichiers (et semble complètement ringard.)
Voici ce que j'ai fait. C'est certainement un hack...
Le problème est que le Look & Feel a déjà sélectionné pour vous lorsque vous avez appelé
super(path)
.De la Java Tutoriel pour Regarder et se Sentir:
Pour y remédier, vous devez le faire (explication situé ici) - remplacer votre bloc try/catch avec ce code:
D'abord, essayez d'exécuter du code à partir de la ligne de commande et spécifier l'aspect et la convivialité il y de voir qu'elle peut être appliquée.
Si elle s'applique le bon regard et la sensation, alors vous pouvez ajouter l'apparence et la sensation de code pour le programme avant de créer le JFileChooser boîte de dialogue. Permet de dire un simple programme devrait ressembler à ceci:
Essayez ceci au début de votre méthode principale. Ou si vous êtes à l'aide de netbeans ou eclipse windowbuilder code généré, le mettre avant le code généré.
Si vous avez besoin d'this -> Windows Regard Et La Sensation De L'Échantillon
Utiliser pouvez utiliser le code ci-dessous (trop)!
Amusez-vous!
À l'aide de la
UIManager.setLookAndFeel(...);
tôt dans votre méthode principale doit être le plus propre approche, comme expliqué précédemment, mais être très prudent sur l'ajout d'un existant application sans de nombreux essais.Par exemple, j'ai essayé de changer les LAF à WindowsLookAndFeel (de sorte que JFileChooser sait que "Mes Documents" fait référence à un dossier nommé "Documents") et de frapper un NullPointerException dans un autre module dû à la ligne suivante:
Pour commencer:
Puis dans une autre classe: