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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QFileDialog  (Прочитано 4119 раз)
qtист
Гость
« : Март 17, 2009, 15:32 »

Есть простейший код:

Код
C++ (Qt)
QFileDialog dlg1(this);
dlg1.setDirectory("c:/Programming2008/cTM/Gener");
dlg1.exec();

При первом вызове все файлы в указанной директории вначале появляются,
потом тут же исчезают. Закрываю диалог,открываю опять - теперь всё нормально.
В чём фишка?
Записан
shadone
Гость
« Ответ #1 : Март 18, 2009, 13:14 »

какая версия Qt и Windows? В Qt 4.5.0 было сделано огромное количество улучшений и исправлений ошибок в QFileDialog.

кстати, попробуйте использовать асинхронный интерфейс диалога который появился в 4.5

Код
C++ (Qt)
QFileDialog dlg1(this);
dlg1.setDirectory("c:/Programming2008/cTM/Gener");
// по-умолчанию open() использует "родной" диалог операционной системы.
dlg1.setOptions(QFileDialog::DontUseNativeDialog);
dlg1.open(this, SLOT("on_file_dialog_closed()"));
 
Записан
qtист
Гость
« Ответ #2 : Март 18, 2009, 13:41 »

Версия Qt 4.4.3 коммерческая.

Причём раньше вроде работало,началось с какого-то непонятного момента.
Записан
shadone
Гость
« Ответ #3 : Март 18, 2009, 14:31 »

Версия Qt 4.4.3 коммерческая.

Причём раньше вроде работало,началось с какого-то непонятного момента.
мой совет - обновитесь до 4.5 - не-родные (non-native) файловые диалоги были сильно оптимизированы.
Записан
Racheengel
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2679


Я работал с дискетам 5.25 :(


Просмотр профиля
« Ответ #4 : Март 23, 2009, 15:16 »

4.4 полна багов. Так что и правда лучше обновиться.
Записан

What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.

COVID не волк, в лес не уйдёт
qtист
Гость
« Ответ #5 : Март 24, 2009, 10:09 »

Поставил 5.5 - эта хрень ушла,но.....
теперь при открытии диалога идёт обрашение к дисководу
(у меня стоит ещё 3" дисковод) - что жутко раздражает.
Это есть под Win ,под linux такого нет.
Записан
shadone
Гость
« Ответ #6 : Март 24, 2009, 12:37 »

Поставил 5.5 - эта хрень ушла,но.....
теперь при открытии диалога идёт обрашение к дисководу
(у меня стоит ещё 3" дисковод) - что жутко раздражает.
Это есть под Win ,под linux такого нет.
насколько я знаю это не правда - в 4.4 обращения к дисководу тоже присутствуют. В 4.3 их (вроде бы) не было.

а вообще вините майкрософт - это у них простейший stat() на дисковод приводит к такому эффекту. Хотя в Qt надо бы придумать workaround.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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