Preciso de um JfileChooser que obtenha imagens apenas de um diretório, e quero setta-lo como diretorio inicial é claro, e também settar uma imagem inicial. Como bloquear a navegação pelos diretorios, ou seja, permitir que apenas arquivos de um unico diretorios sejam selecionados
http://docs.oracle.com/javase/tutorial/uiswing/components/filechooser.html
Imagino que você tenha de criar um filtro que retorne apenas os arquivos (só arquivos, não diretórios) do diretório em questão. Também acho que você tenha de desabilitar (sei lá como ) o botão para ir para o diretório “home”.
Veja o JavaDoc também
Criei um evento click no botao…
JFileChooser abrir = new JFileChooser();
// Definir Titulo da mensagem
abrir.setDialogTitle("Selecione a pasta por favor.");
// DEfinindo caminho padrão
String caminho_padrao = "H:";
File pathInicial = new File(caminho_padrao);
abrir.setCurrentDirectory(pathInicial);//vai abrir direto no dir. 'H:\'
// Filtra só arquivos xml.
FileNameExtensionFilter filtroxml = new FileNameExtensionFilter("Somente xml","xml");
abrir.addChoosableFileFilter(filtroxml);
abrir.setAcceptAllFileFilterUsed(false);
abrir.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
if (abrir.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
tf_caminho_xml.setText(abrir.getSelectedFile().getAbsolutePath());
}
Somente bloquear o diretorio vou ficar devendo…
Obrigado Marcos Paulo, consegui fazer o filtro, e também consegui bloquear a navegação por diretórios com o ouvinte de eventos PropertyChangeListener. onde toda vez que ocorre uma ação para mudar o diretório voltar ao diretório inicial.
Valew galera
boa tarde, DiogoMamedio.
Cara, realmente , deu certo…isso ae…t+