Je travaille sur un projet Eclipse RCP et j'ai besoin de laisser l'utilisateur sélectionner un fichier. Pour plus de commodité, en fonction de certaines conditions, le répertoire initial de la boîte de dialogue de sélection de fichier doit être défini avant de l'ouvrir.Définir le répertoire initial dans SWT FileDialog
Comme je suis lié à Eclipse RCP/SWT, je travaille avec le org.eclipse.swt.widgets.FileDialog
.
La documentation de ce FileDialog
souligne l'utilisation de la méthode setFilterPath(String string)
qui devrait faire exactement ce dont j'ai besoin (voir documentation).
FileDialog dialog = new FileDialog(shell, SWT.OPEN);
dialog.setFilterExtensions(new String [] {"*.html"});
dialog.setFilterPath("c:\\temp");
String result = dialog.open();
Malheureusement, cela ne fonctionne pas, du moins pas "à chaque fois".
Je n'ai actuellement aucune installation à vérifier, mais je suis sûr que la fonctionnalité fonctionnerait parfaitement sur une machine Windows 200/XP/Vista. Je travaille avec une machine Windows 7 et je pense que je souffre du comportement décrit ici pour lpstrInitialDir.
Au moins, c'est exactement le comportement auquel je suis confronté: Le chemin est bon la première fois que j'ouvre la boîte de dialogue, mais la seconde fois, le chemin est initialement défini sur le dernier chemin choisi. Cela semble être pratique dans la plupart des cas, mais ce n'est pas dans le mien.
Est-ce que ce peut être vrai? Si oui, ai-je une chance de changer le comportement en fonction de mes besoins?
Merci pour toute réponse utile!
J'ai soulevé un bug pour cela .. https://bugs.eclipse.org/bugs/show_bug.cgi?id=426849 –