gpt4 book ai didi

java - 在 JList 中显示文件对象的简单名称

转载 作者:行者123 更新时间:2023-12-01 19:46:29 24 4
gpt4 key购买 nike

当我将文件对象添加到 DefaultListModel(用于创建 JList)时,带有 model.addElement(file) ,JList 中显示的文本是文件的路径。但我只想显示文件名。我做不到model.addElement(file.getName())但是,因为稍后我需要访问文件对象,而不仅仅是字符串。

如何在仅显示文件名的情况下将文件对象添加到列表/模型?谢谢!

最佳答案

您可以通过创建自定义渲染器来做到这一点:

class FileRenderer extends DefaultListCellRenderer
{
public Component getListCellRendererComponent(
JList list, Object value, int index, boolean isSelected, boolean cellHasFocus)
{
super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);

File file = (File)value;
setText( file.getName() );

return this;
}
}

然后使用以下方法设置 JList 的渲染器:

list.setCellRenderer( new FileRenderer() );

有关更多信息和工作示例,请参阅 Swing 教程 Writing a Custom Cell Renderer 中的部分。

关于java - 在 JList 中显示文件对象的简单名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53090745/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com