Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:如何使用JFileChooser阻止用户输入文件_Java - Fatal编程技术网

Java:如何使用JFileChooser阻止用户输入文件

Java:如何使用JFileChooser阻止用户输入文件,java,Java,大家好,我有一个java问题 我正在制作一个使用JFileChooser的程序,JFileChooser仅为目录设置,我有一个Jtextfield,用于将文本设置为所选文件夹的目录,但是我必须为在该文本字段中指定特定文件的用户更正错误。我已为此文本字段设置了.setEditable(false),因此用户无法在文本字段中键入内容,用户必须使用与JFileChooser关联的按钮来设置目录。但是,用户仍然可以将文本输入到查找文件时弹出的JFileChooser GUI中,当点击open按钮时,输入

大家好,我有一个java问题

我正在制作一个使用JFileChooser的程序,JFileChooser仅为目录设置,我有一个Jtextfield,用于将文本设置为所选文件夹的目录,但是我必须为在该文本字段中指定特定文件的用户更正错误。我已为此文本字段设置了.setEditable(false),因此用户无法在文本字段中键入内容,用户必须使用与JFileChooser关联的按钮来设置目录。但是,用户仍然可以将文本输入到查找文件时弹出的JFileChooser GUI中,当点击open按钮时,输入的文本将被放入相关的JTextField中。有人知道如何禁用JFileChooser弹出窗口中文本字段的可编辑性吗?也许我的想法是错误的,但基本上用户只能选择一个目录,不能指定任何文件。

使用此方法:

public void setFileSelectionMode(int mode)
将JFileChooser设置为允许用户只选择文件,只选择 目录,或同时选择文件和目录。默认值是
仅限JFileChooser.FILES_。

看起来您可以在上使用JFileChooser#设置文件选择模式(仅限JFileChooser.DIRECTORIES_)。即使这样,您也应该检查getSelectedFile是否返回一个目录并拒绝或接受。确切地说,这就是我所做的,但是用户仍然可以完成文件路径并按Open,它会将完整的文件路径放在文本字段中,指定一个文件会导致程序中断,我必须在JFileChooser文件夹选择GUI中只允许文件夹路径。你知道如何禁用JFileChooser GUI弹出窗口的可编辑性吗?谢谢你粘贴到oracle网站的链接,我能够找到我搞乱的地方。JFileChooser设置为接受文件,我必须将JFileChooser更改为使用.getCurrentDirectory().getpath()。这样做会覆盖在JFileChooser GUI中输入文件的用户,如果用户指定一个文件并单击“确定”,则该文件的父目录将改为放置在JTextField中。很好。谢谢你的回答,我想你可能误解了我的问题,虽然我只设置了目录,但是用户仍然可以使用JFileChooser弹出GUI完成文件路径,这样做会导致程序出错,我必须允许用户只选择一个文件夹,而不能通过JFileChooser文件夹选择器GUI输入文件路径。