dizinleri SADECE dizinleri göstermek için başarısız görüntüler (peşin Teşekkür! Altta daha fazla bilgi. Örnek kod gerekiyorsa lütfen bize bildirin.) Ben çalışıyorumJava JFileChooser Filtresi ile sözde sadece
Sorun çözmek:
kabul (Dosya dosyası) bu olan bir javax.swing.filechooser.FileFilter nesnenin kullanımı yoluyla, sadece dizinleri (ve dosyaları) görüntülemek için bu JFileChooser nesnesini almaya çalışıyorum geçersiz yöntem: return file.isDirectory();
. Ancak, en azından Mac'imde, dosyaların dizinlerle birlikte görüntülenmesini engellemez (dosyaların setFileSelectionMode() yöntemini kullanmadan seçilmesini engeller).
Soru
mıyım şey eksik? Değilse, daha önce hiç böyle biriyle karşılaştı mı?
My anlayış/varsayımlar: Eğer JFileChooser en setFileFilter()
yöntem haline bir javax.swing.filechooser.FileFilter nesnesinde geçerken
- sihirli gerçekleşmesi gerekir.
- onun
setSelectionMode(JFileChooser.DIRECTORIES_ONLY);
Kod
import java.io.File; import javax.swing.filechooser.FileFilter; // inside a method that's adding this to a JPanel _fileChooser = new JFileChooser("."); _fileChooser.setControlButtonsAreShown(false); _fileChooser.setFileFilter(new FolderFilter()); // _fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); _panelMidLeft.add(_fileChooser); // an inner class, defined somewhere else in the class private class FolderFilter extends javax.swing.filechooser.FileFilter { @Override public boolean accept(File file) { return file.isDirectory(); } @Override public String getDescription() { return "We only take directories"; } }
Teşekkür
kullanarak gibi davrandığı) (setFileFilter ile benim JFileChooser gibi görünüyor!Alex
(ortak [Java adlandırma kurallarını] öğrenebilirsiniz http://java.sun.com/ sınıflar, metotlar ve özellik isimleri için dokümanlar/kitaplar/jls/second_edition/html/names.doc.html # 73307) (özellikle isimler için kullanılan durum) ve tutarlı bir şekilde kullanın. –
Öneriniz için teşekkürler. '_' (Benim durumumda örnek değişkenleri fiilen göstermekteydi) kullanımı dışında, şu anda web'deki dokümanları gözden geçirirken, birkaç şeyi belirtmek ister misiniz? –