Я бы хотел, чтобы QFileDialog запрашивал подтверждение перезаписывания , только если выбор был изменен. Есть ли способ достичь этого?QFileDialog запрос на перезапись при изменении выбора
В настоящее время я получаю сохранить имя файла следующим образом:
data_file_name = QtGui.QFileDialog.getSaveFileName(self, "Data File", selected, self.FILTER_DATA_FILE)
Если я повторно сохранения открытого проекта, selected
это имя файла проекта. Если я создаю новый проект, selected
- это имя каталога, в котором пользователь недавно сохранил проект. Если я введу имя файла, которого не существует (независимо от значения selected
), я не получаю запрос на подтверждение, если это необходимо. Однако, если выбранное имя является файлом, который существует, также независимо от значения selected
, я всегда получаю подтверждение за подтверждение. Я бы хотел:
- Если диалоговое окно имеет выбор по умолчанию, и пользователь не изменяет этот выбор, не запрашивайте подтверждение.
- Иначе, если пользователь вводит имя файла, которое в настоящее время не существует, не запрашивайте подтверждение.
- Else запрос для подтверждения. (Мне не особо интересно, что произойдет, если пользователь вводит пустую строку в качестве имени файла.)
В настоящее время я использую Qt 4, хотя я не против обновления до Qt 5, если это сделает моя жизнь проще.