Работа QFileDialog на разных операционных системах может отличаться некоторыми особенностями: 1
- В macOS нативный файловый диалог не показывает строку заголовка. 1
- В Unix/X11 нормальное поведение диалога — разрешать и следовать символическим ссылкам. 1 Например, если /usr/tmp — символическая ссылка на /var/tmp, то после входа в /usr/tmp диалог изменится на /var/tmp. 1
- В Windows диалог запускает блокирующий модальный цикл событий, который не отправляет никаких QTimers, и если родитель не равен nullptr, то он позиционирует диалог сразу под строкой заголовка родителя. 1
Чтобы учесть различия в поведении или внешнем виде нативных файловых диалогов на разных платформах, можно использовать опцию QFileDialog::DontUseNativeDialog. 4 Она отключает использование нативных диалогов и обеспечивает согласованное поведение на разных платформах. 4