2012-03-21 5 views
2

J'ai besoin de savoir lequel des 3 est le meilleur pour moi. Mes exigences sont les suivantes dans l'ordre d'importance:JFileChooser vs JDialog vs FileDialog

  • Enregistrer et charger des fichiers avec facilité.
  • Type de fichier filtre pendant sélection de fichier (pas après).
  • Look and feel est exactement le même que le système d'exploitation natif L & F.

S'il y a une boîte de dialogue que je ne l'ai pas mentionné qui serait plus idéal, s'il vous plaît laissez-moi savoir.

+1

Tout ce qui démarre J est un swing donc il est peu probable que cela corresponde bien à l'OS natif. JFileChooser permet un filtrage complet, AWT FileDialog est susceptible d'être meilleur pour cela. JDialog est un dialogue vide !! – Adam

+0

Ce que je sais déjà. Ce que je suis réellement après, c'est une solution qui satisfait tous les 3 balles. Je ne peux tout simplement pas croire que Java ne fournirait pas une telle solution qui offre à la fois L & F familier et un système de filtrage décent. N'y a-t-il aucun moyen d'y parvenir? –

Répondre

8

Quelle est la suite de votre demande écrite? Si vous avez utilisé AWT, vous devez utiliser FileDialog. Si vous avez utilisé Swing, vous devez utiliser JFileChooser. Les deux classes répondent à toutes vos exigences. (A JDialog est tout simplement une fenêtre vide, vous ne pouvez l'utiliser pour ouvrir des fichiers si vous ajoutez un Component à ce qui vous permet, et JFileChooser fait déjà pour vous.)

enregistrement et le chargement doit être écrit avec vos propres méthodes, JFileChooser et FileDialog ne peuvent être utilisées que pour sélectionner le (s) fichier (s).

Les deux FileDialog et JFileChooser prennent en charge les filtres de fichiers pendant la sélection. L'interface utilisateur par défaut est le système d'exploitation natif '

FileDialogJFileChooser (en fait, l'ensemble de votre applicatin) UI peut être mis à l'OS natif 'avec UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()).

+0

Le filtre de fichiers de FileDialog est nul. Je l'ai essayé. La dernière fois que j'ai essayé setLookAndFeel, ça n'a rien changé, mais je vais essayer. Cela a peut-être été une erreur personnelle. –

+0

@PerryMonschau Il peut sucer, mais il est toujours là. Vous avez besoin d'appeler 'setLookAndFeel' avant de créer vos composants ou d'appeler' SwingUtilities # updateComponentTreeUI' sur votre conteneur de plus haut niveau, comme les états javadoc. – Jeffrey

+2

Non, voir les composants internes de JFileChooser ont le même L & F, mais la mise en page n'est pas native au système d'exploitation. Cependant, le FileDialog possède en fait le système de filtre de fichiers natif, je suis juste habitué à un système d'exploitation différent. –