[英]JFileChooser and the “Details View”
使用JFileChooser時,有一個“詳細信息視圖”按鈕。 每個文件顯示5條信息。 圖標,名稱,大小,類型和“修改日期”。 什么類控制'類型'值? 使用類'FileView',可以控制圖標和名稱。 使用“文件”類,可以控制“大小”和“修改日期”。 類型描述非常好,我想在其他地方使用它們,我也有一些“新”類型,我希望能夠給出“類型”描述。
FileView>>getTypeDescription()
這是你想要的?
import javax.swing.*;
import javax.swing.filechooser.*;
import java.io.*;
public class A {
public static void main(String[] args) {
File f = new File("f.jpg");
JFileChooser j = new JFileChooser();
System.out.println(j.getTypeDescription(f));
}
}
輸出在我的系統上:
F:> javac A.java
F:> java A.
IrfanView JPG文件
這是因為我的系統上安裝了IrfanView; JFileChooser / FileView >> getTypeDescription()查詢系統(在我的例子中是Windows)以獲取此信息。 要“添加您自己的描述”,您可以(比如camickr所說)覆蓋getTypeDescription(),或者您可以將其添加到您的系統中(如果是HKEY_CLASSES_ROOT下的注冊表中的Windows)。
我認為在Java中覆蓋類型信息所要做的就是使用自己的FileSystemView子類實例化JFileChooser。
子類FileSystemView到MyFileSystemView
覆蓋getSystemTypeDescription(文件f)
在你的特殊文件類型的重寫中返回你想要的任何東西,並通過使用超級調用返回值來返回默認值,否則返回默認值
使用以下原型之一實例化FileChoosers,將自定義MyFileSystemView作為第二個參數
JFileChooser(File currentDirectory,FileSystemView fsv)
JFileChooser(String currentDirectoryPath,FileSystemView fsv)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.