簡體   English   中英

如何在 QFileDialog 中過濾帶有空格字符的文件名?

[英]How to filter file names with space character in a QFileDialog?

使用Qt我想打開一個 QFileDialog ,其中只顯示那些包含空格字符的文件。

這是一個簡單的例子:

QFileDialog::getOpenFileName(nullptr, "Open file", "/tmp", "My1stFilter (* *);;My2ndFilter (x y)");

但是My1stFilter ( * * ) 匹配所有文件,而My2ndFilter ( yx ) 匹配名稱為“x”和名稱為“y”的所有文件,而我只想擁有名稱為“xy”的文件。 這並不奇怪,因為空白通常會分隔不同的過濾器模式(根據https://doc.qt.io/qt-5/qfiledialog.html#setNameFilter

有沒有辦法在 QFileDialog 的名稱過濾器中轉義特殊字符,如空格?
(名稱過濾器中的括號字符也有類似的問題。)

我試圖在空白之前設置反斜杠或將整個模式放在單引號和雙引號中但沒有成功。

您需要放棄根本不支持此功能的本機文件對話框。 然后您可以使用代理 model 根據您的條件進行過濾。

請參閱QFileDialog 的正則表達式過濾器

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM