如何使用 juce 的 FileFilter 描述我想要的文件过滤器?
Posted
技术标签:
【中文标题】如何使用 juce 的 FileFilter 描述我想要的文件过滤器?【英文标题】:How do I describe what file filter I want using juce's FileFilter? 【发布时间】:2018-07-10 18:02:19 【问题描述】:我试图让浏览器只显示音频文件,但是我不知道用什么语法来描述我想要的文件类型
fileChooser->setFileFilter(FileFilter(".wav"));
当我把它说成“分配抽象类类型'juce::FileFilter'的对象”时
对不起,如果这很简单
【问题讨论】:
【参考方案1】:您应该改用WildcardFileFilter
,因为FileFilter
是一个抽象基类:
fileChooser->setFileFilter(WildcardFileFilter("*.wav", "*", "somedescription"));
Docs.
注意setFileFilter
要求const*
,这意味着您必须管理它的生命周期。
此时,您正在传递一个将被销毁的临时对象,而fileChooser
带有一个悬空指针,您应该使用寿命更长的东西。
【讨论】:
当我这样做时,它说“没有从 'juce::WildcardFileFilter' 到 'const juce::FileFilter *' 的可行转换” @harry97uk 没错,因为你需要传递一个指针,而不是一个对象。 fileChooser->setFileFilter(WildcardFileFilter("*.wav"));我把这个和它说的一样以上是关于如何使用 juce 的 FileFilter 描述我想要的文件过滤器?的主要内容,如果未能解决你的问题,请参考以下文章