Russian Qt Forum
Сентябрь 30, 2024, 20:25 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: различное поведение QFileDialog::getSaveFileName()  (Прочитано 9117 раз)
nixman05
Гость
« : Июнь 02, 2009, 18:14 »

Делаю различными способами вызов QFileDialog::getSaveFileName
Код:
QString s=QFileDialog::getSaveFileName(0,tr("Сохранить данные"),QString(),
                                          tr("Файл данных (*.dat)") );


Код:
QString s=QFileDialog::getSaveFileName(0,tr("Сохранить данные"),QString(),
                                          tr("Файл данных (*.dat)"),0, 0);

Код:
QString s=QFileDialog::getSaveFileName(0,tr("Сохранить данные"),QString(),
                                          tr("Файл данных (*.dat)"),0,  QFileDialog::DontUseNativeDialog);

В первых двух случаях s присваивается имя файла с расширением. А во третьем расширение отсутствует. Как реализовать возвращение имени файла с расширением при использовании QFileDialog::DontUseNativeDialog?
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #1 : Июнь 02, 2009, 20:44 »

посмотри пример
%QTDIR%\examples\dialogs\standarddialogs
там с расширением получается
Записан

Юра.
nixman05
Гость
« Ответ #2 : Июнь 02, 2009, 21:02 »

посмотри пример
%QTDIR%\examples\dialogs\standarddialogs
там с расширением получается

Нет, не получается. Если использовать не нативный вид диалогов, то возвращается имя файл без расширения.

P.S. Qt 4.5. Тестируется на WinXP SP3. На других платформах еще не смотрел.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #3 : Июнь 02, 2009, 21:44 »

У меня всё путём
Родной
Не родной

Win2k SP4, Qt 4.4.3 и Qt 4.5.x (вчера из Git'а)
Записан

Юра.
spectre71
Гость
« Ответ #4 : Июнь 02, 2009, 22:42 »

У меня всё путём

У меня тоже не работает.
У тебя видимо имя файла при вызове во 2 случае было с расширением (сохранилось после 1 запуска).
Проверь!
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #5 : Июнь 02, 2009, 23:03 »

попробовал покаждому поводу перезапускать приложение.
Результат: всегда с расширением.

Проверил версии:
4.4.3
4.5.0
4.5.1
4.5.снимок (от 02.06.2009)
Записан

Юра.
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #6 : Июнь 02, 2009, 23:11 »

П.С. пробовал и отладочную версию и релизную, кроме "Снимка" в нём только отладочную (т.к. Qt ещё и в релизной версии собирать регулярно лень)
Записан

Юра.
spectre71
Гость
« Ответ #7 : Июнь 03, 2009, 07:56 »

Я пробовал и в QT Demo и в своем тесте, результат один.
с QFileDialog::DontUseNativeDialog - расширение не подставляется
Записан
igor_bogomolov
Гость
« Ответ #8 : Июнь 03, 2009, 09:42 »

WinXP SP3 Qt 4.5.1 opensource
Полет нормальный, расширения подставляются
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.064 секунд. Запросов: 22.