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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QFileDialog и setLabelText  (Прочитано 4551 раз)
blood_shadow
Гость
« : Май 22, 2011, 13:18 »

Чет немного не понимаю делаю так:
Код
C++ (Qt)
QFileDialog fileDialog;
fileDialog.setLabelText(QFileDialog::Accept, tr("Save this"));
fileDialog.setLabelText(QFileDialog::Reject, tr("Cancel"));
 
QString destination =
       fileDialog.getSaveFileName(0, tr("Save as"), fileName,
                                   fileExtension);
 

но всеравно получаю стандартные подписи кнопок ("Сохранить и Отмена"),
можно ли задать свои имена этим кнопкам и как?
Записан
marbius
Гость
« Ответ #1 : Май 22, 2011, 13:36 »

Код
C++ (Qt)
QFileDialog fileDialog;
fileDialog.setLabelText(QFileDialog::Accept, tr("Save this"));
fileDialog.setLabelText(QFileDialog::Reject, tr("Cancel"));
fileDialog.setWindowTitle(tr("Save as"));
fileDialog.setDirectory(fileName);
fileDialog.setFilter(fileExtension);
fileDialog.exec();
 
как-то так...
Записан
LisandreL
Птица говорун
*****
Offline Offline

Сообщений: 984


Надо улыбаться


Просмотр профиля
« Ответ #2 : Май 22, 2011, 14:19 »

µarbius всё правильно написал. Получать результат будете так:
Код
C++ (Qt)
QString destination;
if ( fileDialog.exec() )
{
   destination = fileDialog.selectedFiles().first();
}
else
{
  ...
}
Поясню только, что getSaveFileName - статическая функция, поэтому из fileDialog никакие настройки и не берёт (и брать не может).

Если аналогично будете диалог открытия файлов делать, то надо добавить строчку:
Код
C++ (Qt)
fileDialog.setFileMode(QFileDialog::ExistingFile);
Или QFileDialog::ExistingFiles, если допускается открытие файлов.
Записан
blood_shadow
Гость
« Ответ #3 : Май 22, 2011, 15:24 »

все понял, но при fileDialog.exec() появляется не стандартный диалог(не родной)
можно как-то вызвать родной диалог и поменять в нем названия кнопок?
Записан
LisandreL
Птица говорун
*****
Offline Offline

Сообщений: 984


Надо улыбаться


Просмотр профиля
« Ответ #4 : Май 22, 2011, 18:31 »

Нативные диалоги - только в статических функциях. Либо шашечки, либо ехать. http://stackoverflow.com/questions/2609119/qt-qfiledialog-native-dialogs-only-with-static-functions
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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