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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QFileDialog с выбором кодировки  (Прочитано 3946 раз)
moskk
Гость
« : Октябрь 09, 2012, 07:53 »

здравствуйте.
 на картинке скриншот окна сохранения файла из виндового блокнота, и там внизу есть бокс для выбора кодировки. вопрос: можно ли как-нибудь такое сделать на Qt?
 в принципе, несколько раз в разных прогах попадались такие диалоги, у которых внизу либо поле ввода, либо чекбокс какой-нибудь лишний. что-то не верится, что для этого нужно писать свой диалог. должен быть по идее способ проще. может, кто знает?
Записан
Bepec
Гость
« Ответ #1 : Октябрь 09, 2012, 07:57 »

Проще?

Что может быть проще создания наследника QDialog  с дополнительным функционалом?

Незнаю. Помоему это уже излишество у вас? Или я такой нервный...
Записан
Syveren
Гость
« Ответ #2 : Октябрь 09, 2012, 09:09 »

Как-то давно делал такую вещь наследованием и добавлением в layout дополнительной опции:
Код
C++ (Qt)
FileDialogWithCodingChoice::FileDialogWithCodingChoice(QWidget *parent, const QString &caption, const QString &dir, const QString &filter) :
       QFileDialog(parent,caption,dir,filter)
{
   QGridLayout * grid = qobject_cast<QGridLayout*>(layout());
   if(!grid)
       return;
   QStringList codecsAvailable;
   codecsAvailable  << "UTF-8"<< "KOI8-R" << "CP1251";
  QLabel * lab_text= new QLabel(tr("Кодировка"),this);
   comboBoxСodings = new QComboBox(this);
   comboBoxСodings->addItems(codecsAvailable);
   comboBoxСodings->setCurrentIndex(comboBoxСodings->findText(defaultCodecName));
   int row = grid->rowCount();
   grid->addWidget(lab_text,row,0);
   grid->addWidget(comboBoxСodings,row,1);
}
 
« Последнее редактирование: Октябрь 09, 2012, 09:34 от Syveren » Записан
moskk
Гость
« Ответ #3 : Октябрь 10, 2012, 06:50 »

Проще?

Что может быть проще создания наследника QDialog  с дополнительным функционалом?
а я вот знаю. что-то типа:
Код
C++ (Qt)
   QFileDialog dialog;
 
   dialog.setOptions(QFileDialog::EnableEcncodingCombo);  // it would be nice :)
 
но не судьба. всем спасибо за ответы! Улыбающийся
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #4 : Октябрь 16, 2012, 06:23 »

Проще?

Что может быть проще создания наследника QDialog  с дополнительным функционалом?
а я вот знаю. что-то типа:
Код
C++ (Qt)
   QFileDialog dialog;
 
   dialog.setOptions(QFileDialog::EnableEcncodingCombo);  // it would be nice :)
 
но не судьба. всем спасибо за ответы! Улыбающийся

А я знаю что, что-то типа такого нету в QFileDialog (Qt 4.8.0) Улыбающийся
Попробуйте тот код, что был предложен выше Улыбающийся
или пишите троллям, чтобы они добавили combobox выбора кодировки в файловый диалог Улыбающийся
« Последнее редактирование: Октябрь 16, 2012, 06:25 от gil9red » Записан

Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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