Версия для печати темы
Форум на CrossPlatform.RU _ Qt GUI _ Получение полного пути несуществующего файла с помощью getOpenFileName
Автор: XXL 26.11.2009, 17:42
Всем доброго вечера!)
Подскажите, пожалуйста, как получить полное имя несуществующего файла с помощью функции getOpenFileName? QFileDialog::AnyFile помогает для getSaveFileName, но не для getOpenFileName...Можно это вообще сделать?
Большое спасибо!)
Автор: niXman 26.11.2009, 17:59
Чтоб получить имя файла при помощи getOpenFileName, нужно выбрать его. А если его не существует, то и выбирать нечего. Очевидно.
Автор: Litkevich Yuriy 26.11.2009, 18:51
XXL, тебе нужно, чтобы пользователь указывал путь к нему?
Автор: grio 26.11.2009, 19:07
Цитата(XXL @ 26.11.2009, 17:42)
Всем доброго вечера!)
Подскажите, пожалуйста, как получить полное имя несуществующего файла с помощью функции getOpenFileName? QFileDialog::AnyFile помогает для getSaveFileName, но не для getOpenFileName...Можно это вообще сделать?
Большое спасибо!)
очевидно, сначала надо его создать, потом получить имя через getOpenFileName, а потом с чистой совестью удалить
а если серьезно, то почему именно getOpenFileName?
что ты собираешься сделать, опиши задачу подробнее.
Автор: XXL 26.11.2009, 22:10
Мне нужно задавать в обычной текстовой строке пути к каким-либо произвольным файлам (как существующим, так и еще не существующим, которые далее в программе будут при необходимости созданы). Чтобы пользователю не приходилось вводить этот путь полностью вручную (для автоматизации действий), необходимо открывать диалоговое окно для выбора файлов QFileDialog::getOpenFileName(...). Если выбирать существующий файл, все ОК-функция возвращает полный путь, а если набрать в строке имени файла в данном диалоге имя несуществующего файла - получаю соответствующее сообщение и пустую строку. Можно ли как-то отключить это уведомление и получить фиктивный путь? Просто в функции getSaveFileName в аналогичной ситуации можно вернуть фиктивный путь, по которому требуется сохранить файл, и уже при сохранении реально его создать...
Автор: Litkevich Yuriy 26.11.2009, 22:12
XXL, а что тебе мешает использовать именно диалог сохранения?
Автор: XXL 26.11.2009, 22:21
То есть просто использовать немного другую функцию...В самом деле, конечному пользователю какая разница,он в код не полезет!))))))Спасибо тебе большое!А то я бы и дальше насиловала getOpenFileName(...)!
Автор: grio 27.11.2009, 11:18
Цитата(XXL @ 26.11.2009, 22:21)
То есть просто использовать немного другую функцию...В самом деле, конечному пользователю какая разница,он в код не полезет!))))))Спасибо тебе большое!А то я бы и дальше насиловала getOpenFileName(...)!
а зачем тебе вообще нужен диалог?
используй просто QFile или, если надо еще QDir:
QFile myfile("c:\Text\readme.txt");
Автор: niXman 27.11.2009, 12:41
Наверное в содеянном есть некий тайный смысл.
Автор: Litkevich Yuriy 27.11.2009, 14:30
Цитата(grio @ 27.11.2009, 14:18)
а зачем тебе вообще нужен диалог?
Она же написала, чтобы человек (пользователь) мог простым способом указать путь где должен размещаться файл
Автор: niXman 27.11.2009, 16:11
Цитата(Litkevich Yuriy @ 27.11.2009, 14:30)
указать путь где должен размещаться файл
так для этого же есть
getSaveFileName
Автор: XXL 27.11.2009, 17:16
Цитата(niXman @ 27.11.2009, 16:11)
Цитата(Litkevich Yuriy @ 27.11.2009, 14:30)
указать путь где должен размещаться файл
так для этого же есть
getSaveFileNameДело в том, что мне нужен диалог открытия документа (
предпочтительно) с соответстующими параметами (названиями кнопок и т .д.). Поэтому в случае невозможности использования сстандартного диалогового окна сохранения придется создать свой QFileDialog c нужными параметрами (viewMode, labelText и т.д.)
Такое задание)
Автор: niXman 27.11.2009, 18:34
Понятно. Значит свой
Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)