2
我想創建一個QFileDialog的子類,它將用於打開只有一些特定內容的目錄。我可以設置自己的代理模型來處理文件列表的行爲,但我怎樣才能禁用/啓用確定按鈕? 我是否必須創建自己的小部件?QFileDialog禁用按鈕
我想創建一個QFileDialog的子類,它將用於打開只有一些特定內容的目錄。我可以設置自己的代理模型來處理文件列表的行爲,但我怎樣才能禁用/啓用確定按鈕? 我是否必須創建自己的小部件?QFileDialog禁用按鈕
您應該可以通過安裝proxy model來根據您的標準過濾文件和目錄。
編輯:
這隻能通過隱藏不需要的文件,對文件的工作。但是你不能隱藏目錄,因爲你需要允許導航進入它們。
對於挑選目錄,您將不得不建立自己的對話框。是的,我認爲這是Qt的一個缺陷。
我能做到以下幾點,以獲得「保存」按鈕:
QDialogButtonBox *button_box = findChild<QDialogButtonBox *>();
QPushButton *save_button;
if (button_box) {
save_button = button_box->button(QDialogButtonBox::Save); // depends on acceptMode()
}
是,但使用代理模式,我不能啓用/禁用QPushButton。 – Dejwi
是的。請參閱編輯。 –