2016-12-20 1 views
0

QFileDialog에서 덮어 쓰기 확인 메시지를 표시하려면 의 경우에만 선택 항목이 변경됩니다. 이것을 달성 할 수있는 방법이 있습니까?QFileDialog 선택 사항이 변경된 경우 덮어 쓰기 묻는 메시지

현재, 나는 다음과 같이 파일 이름을 저장 받고 있어요 :

data_file_name = QtGui.QFileDialog.getSaveFileName(self, "Data File", selected, self.FILTER_DATA_FILE) 

나는 열려있는 프로젝트를 다시 저장하고있어 경우는, selected 프로젝트 파일의 이름입니다. 새 프로젝트를 만드는 경우 selected은 사용자가 가장 최근에 프로젝트를 저장 한 디렉토리의 이름입니다. 존재하지 않는 파일 이름을 입력하면 (selected 값과 관계 없음) 원하는대로 확인 메시지가 표시되지 않습니다. 그러나 선택한 이름이 존재하는 파일 인 경우 selected의 값과 상관없이 나는 항상 확인을 위해 승격됩니다. 다음과 같은 동작을 원합니다.

    대화 상자에 기본 선택 항목이 있고 사용자가이 선택 항목을 변경하지 않으면 확인 메시지가 표시되지 않습니다.
  1. 사용자가 현재 존재하지 않는 파일 이름을 입력하면 확인 메시지가 나타나지 않습니다.
  2. 그렇지 않으면 확인 메시지가 나타납니다. (사용자가 빈 문자열을 파일 이름으로 입력하면 어떤 일이 발생할지 특히 신경 쓰지 않습니다.)

현재 Qt 4로 사용하고 있습니다. 내 인생이 더 쉬워.

답변

0

내가 원했던 것처럼 보이지 않습니다. QFileDialog::accept()은 그런 종류의 맞춤 설정을위한 메커니즘을 제공하지 않습니다. 대화 상자에서 덮어 쓰기 확인을 비활성화하고 직접 논리를 구현해야합니다.