내가 그렇게 같은 QFileDialog을 여는 인 QDialog이 : 불행하게도QFileDialog에서 덮어 쓰기를 표시하도록하려면 어떻게해야합니까?
QFileDialog fd(this);
fd.setFileMode(QFileDialog::AnyFile);
if (fd.exec()) {
// save data to a file
}
을 the default behavior은 아주 기본 있도록 될 것 같지 않습니다, 내가 파일을 선택하면 파일 대화 상자가 덮어 쓰기에 대해 나 메시지를 표시하지 않습니다 이미 존재 함. setConfirmOverwrite(true)
또는 setOption(QFileDialog::DontConfirmOverwrite, false)
을 먼저 호출해도 도움이되지 않습니다. 우분투 11.04 및 Windows XP에서 Qt 4.7.3 및 4.7.4에서이 두 가지를 테스트했습니다.
주위를 둘러 보니 this bug report이 발견되었습니다. QFileDialog::getSaveFileName()
에는이 문제가 있지만 Maemo에만 해당되며 Qt 4.7.3이 출시되기 전에 잘 고쳐졌습니다. 내 응용 프로그램에서 그 방법을 사용하면 정상적으로 작동하며 파일을 덮어 쓸 것인지 묻는 메시지가 나타납니다. (관련이없는 이유로 getSaveFileName()
을 사용하고 싶지 않습니다.)
나는 이것들이 효과가 없다고 불평하는 사람을 찾을 수 없습니다. 내가 잘못했거나 버그입니까? 대화 상자가 단순한 열기 대화 상자인지 아닌지 알지 못하기 때문에 대화 상자가 표시되지 않을 수 있습니다. 대화 상자에 확인 - 덮어 쓰기 옵션을 설정하지 않고 저장 대화 상자를 표시하는 방법이 표시되지 않습니다. 실패하면) 은이 기본적으로 메시지를 표시해야한다고 말합니다.
Qt 4.8.0에서 동일한 문제가 발생했습니다. –