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

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

Страниц: [1] 2   Вниз
  Печать  
Автор Тема: Вопрос по QFileDialog  (Прочитано 9260 раз)
vohulg
Гость
« : Июль 22, 2013, 16:06 »

При  вызове QFileDialog если выбрать существующий файл то выводится еще одно маленькие диалоговое окно с с надписью "Перезаписать существующий файл или нет". Как мне  изменить надпись в этом маленьком окне и обработать своими функциями нажатие кнопок в маленьком диалоговом окне ?

Спасибо
Записан
Bepec
Гость
« Ответ #1 : Июль 22, 2013, 17:08 »

Если используется диалог Qt - отнаследоваться и переписать нужную вам часть, если это возможно.
Если используется системный диалог - разочароваться в программировании.

И третий вариант - написать свой диалог.
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #2 : Июль 22, 2013, 17:27 »

Ну можно изменив callback(и) для стандартных диалогов - но это глухой нативняк, и мало не покажется. Почему бы не схитрить: для диалога убрать этот запрос, а когда он отдаст управление - самому проверить файл существует и уже крутить любое свое окно.

И третий вариант - написать свой диалог.
Цитировать
оптимизм * компетентность = константа
Улыбающийся
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #3 : Июль 22, 2013, 17:58 »

для диалога убрать этот запрос
каким образом?
Записан

Юра.
Bepec
Гость
« Ответ #4 : Июль 22, 2013, 18:17 »

QFileDialog::DontConfirmOverwrite

Третий вариант для истинных маньяков
Записан
vohulg
Гость
« Ответ #5 : Июль 23, 2013, 07:50 »

Что-то у меня ошибку выдает при передаче параметра QFileDialog::DontConfirmOverwrite

QString filename = QFileDialog::getExistingDirectory(this,
                        tr("Choose Or Create File"),
                        "/home",
                        QFileDialog::DontConfirmOverwrite);
Записан
Bepec
Гость
« Ответ #6 : Июль 23, 2013, 08:03 »

А мозг есть?
В диалоге получения существующей директории отключать запрос о перезаписи файла?

Хотя вроде должно работать, но по здравому смыслу - не должно.

Ну и конечно вы написали нам ошибку. Большими такими буквами. Вот только стар я и не вижу её в вашем сообщении ^.^
Записан
vohulg
Гость
« Ответ #7 : Июль 23, 2013, 09:26 »

Ошибка:

"no matching function for call to QFileDialog:getSaveFileName()"
Записан
Bepec
Гость
« Ответ #8 : Июль 23, 2013, 09:35 »

 QFileDialog::getSaveFileName()
Записан
vohulg
Гость
« Ответ #9 : Июль 23, 2013, 09:49 »

Опечатка, корректирую ошибку

"no matching function for call to QFileDialog::getSaveFileName()"

Не пойму чем вам не нравится что я передаю в диалоге получения существующей директории опцию отключения запроса о перезаписи файла. Вообщето в этой статической функции предусмотрена такая опция -

QString   getSaveFileName ( QWidget * parent = 0, const QString & caption = QString(), const QString & dir = QString(), const QString & filter = QString(), QString * selectedFilter = 0, Options options = 0 )

см. Options options

Записан
Bepec
Гость
« Ответ #10 : Июль 23, 2013, 10:18 »

Вы не девушка? такая очаровательная логика обычно только у них.

Цитировать
QFileDialog::getExistingDirectory(this,

Цитировать
Ошибка:

"no matching function for call to QFileDialog:getSaveFileName()"


Цитировать
Опечатка, корректирую ошибку

"no matching function for call to QFileDialog::getSaveFileName()"

Цитировать
что я передаю в диалоге получения существующей директории опцию отключения запроса о перезаписи файла


Цитировать
Вообщето в этой статической функции предусмотрена такая опция -

QString   getSaveFileName
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #11 : Июль 23, 2013, 11:52 »

Что-то у меня ошибку выдает при передаче параметра QFileDialog::DontConfirmOverwrite

QString filename = QFileDialog::getExistingDirectory(this,
                        tr("Choose Or Create File"),
                        "/home",
                        QFileDialog::DontConfirmOverwrite);
Там 6 аргументов и options последний, а у Вас он идет 4-й
Записан
Hrundel
Гость
« Ответ #12 : Июль 23, 2013, 12:12 »

Вы не девушка? такая очаровательная логика обычно только у них.

Верес, а ты не муд...ак? Такая очаровательная манера общаться только у них. Веселый  Смеющийся  Веселый
Записан
Bepec
Гость
« Ответ #13 : Июль 23, 2013, 12:14 »

Печаль. Неадекваты отакэ. Нет, я не муд и я не ак Улыбающийся
Записан
vohulg
Гость
« Ответ #14 : Июль 23, 2013, 12:23 »

Что-то у меня ошибку выдает при передаче параметра QFileDialog::DontConfirmOverwrite

QString filename = QFileDialog::getExistingDirectory(this,
                        tr("Choose Or Create File"),
                        "/home",
                        QFileDialog::DontConfirmOverwrite);
Там 6 аргументов и options последний, а у Вас он идет 4-й

Спасибо.
Записан
Страниц: [1] 2   Вверх
  Печать  
 
Перейти в:  


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