QFileDialog開啟兩次的解決方法

2022-08-13 12:24:11 字數 403 閱讀 6232

最開始用語句qstring filepath = qfiledialog::getopenfilename();來實現開啟檔案,後來發現此種方法無法知道使用者點選的是"開啟"還是"取消",因此改為

qfiledialog *filedialog = new qfiledialog(this);

if(qfiledialog::accepted == filedialog->exec())

此時發現,點選"開啟"或者"取消"對話方塊關閉後會再彈出來一次。

原因:執行exec()和getopenfilename()都會開啟一次對話方塊,因此會開啟兩次對話方塊。

解決方法:將語句filedialog->getopenfilename()改為filedialog->selectedfiles()[0]即可。

關於兩次fork

兩次fork 的作用 首先,要了解什麼叫殭屍程序,什麼叫孤兒程序,以及伺服器程序執行所需要的一些條件。兩次fork 就是為了解決這些相關的問題而出現的一種程式設計方法。孤兒程序 孤兒程序是指父程序在子程序結束之前死亡 return 或exit 如下圖1所示 在一定時間內,當系統發現孤兒程序時,ini...

關於兩次fork

兩次fork 的作用 首先,要了解什麼叫殭屍程序,什麼叫孤兒程序,以及伺服器程序執行所需要的一些條件。兩次fork 就是為了解決這些相關的問題而出現的一種程式設計方法。孤兒程序 孤兒程序是指父程序在子程序結束之前死亡 return 或exit 如下圖1所示 在一定時間內,當系統發現孤兒程序時,ini...

兩次left join 查詢

t1 id是第乙個球隊的id號 t2 id是第二個球隊的id號 t1 score是第乙個球隊的的比分 t2 score是第二個球隊的的比分 第一行的含義是 3號球隊南韓和4號球隊澳大利亞的比分是1 2,比賽時間是1422694800 需求 將每隊的比賽列出 如 南韓 1 2 澳大利亞 1422694...