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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QPrintPreviewWidget  (Прочитано 7109 раз)
cya-st
Гость
« : Май 18, 2010, 13:10 »

Всем привет.
Есть у кого-то какой нибудь пример работы с QPrintPreviewWidget?
Записан
BaltikS
Гость
« Ответ #1 : Май 19, 2010, 12:10 »

Пардон, а в чём возникла сложность?
Записан
cya-st
Гость
« Ответ #2 : Май 19, 2010, 18:23 »

Пардон, а в чём возникла сложность?
Я вообще не знаю как с этим класом работать, его надо встраивать в другой виджет или отдельно вызывать? Если отдельно вызываю, то нет панели инструментов в окне.
Записан
BaltikS
Гость
« Ответ #3 : Май 19, 2010, 18:38 »

Есть QPrintPreviewDialog - готовое окно с кнопками.
Класс QPrintPreviewWidget класс отрисовки соответственно предварительного просмотра перед печатью... Размещается, как правило, на другие виджеты...но сами действия, касающиеся масштаба, положения и т.п.,  разработчик  берёт на себя, соединяя свои экшены со слотоами QPrintPreviewWidget (или вызывая методы данного класса).
Я использовал данный класс для создания более продвинутого предварительного просмотра чем QPrintPreviewDialog... Вот такой мой опыт Улыбающийся. Полагаю, что в QPrintPreviewDialog используется он же + несколько кнопок....
Записан
cya-st
Гость
« Ответ #4 : Май 19, 2010, 20:58 »

Есть QPrintPreviewDialog - готовое окно с кнопками.
Класс QPrintPreviewWidget класс отрисовки соответственно предварительного просмотра перед печатью... Размещается, как правило, на другие виджеты...но сами действия, касающиеся масштаба, положения и т.п.,  разработчик  берёт на себя, соединяя свои экшены со слотоами QPrintPreviewWidget (или вызывая методы данного класса).
Я использовал данный класс для создания более продвинутого предварительного просмотра чем QPrintPreviewDialog... Вот такой мой опыт Улыбающийся. Полагаю, что в QPrintPreviewDialog используется он же + несколько кнопок....
Можеш пример кинуть? А на счет QPrintPreviewDialog, я не могу в нем поменять масштаб, поэтому и хочу использовать QPrintPreviewWidget.
Записан
BaltikS
Гость
« Ответ #5 : Май 23, 2010, 11:07 »

Примерно так...... Есть QMainWindow на нём QPrintPreviewWidget и тулбары....оставил только интересующее вас изменение масштаба....

Код
C++ (Qt)
pw = new QPrintPreviewWidget(printer, this);
setCentralWidget(pw);
connect(pw, SIGNAL(paintRequested(QPrinter *)), SLOT(on_paintRequested(QPrinter *)));
 
QLabel *l = new QLabel(ui.t_view);
l->setText(tr("Масштаб: "));
ui.t_view->addWidget(l);
 
cb = new QComboBox(ui.t_view);
cb->addItems(QStringList()<<QString("10 %")<<QString("25 %")<<QString("50 %")<<QString("75 %")
<<QString("100 %")<<QString("125 %")<<QString("150 %")<<QString("200 %")
<<QString("250 %")<<QString("500 %"));
cb->setView(new QListView(cb));
cb->setEditable(TRUE);
cb->lineEdit()->setValidator(new QIntValidator(cb));
ui.t_view->addWidget(cb);
connect(cb, SIGNAL(activated( const QString &)), SLOT(on_activated( const QString &)));
 
...
 
void BPrintPreview::on_activated( const QString & text )
{
if (text.right(1) == QString("%")) pw->setZoomFactor(text.left(text.length()-2).toInt()/100.);
else pw->setZoomFactor(text.toInt()/100.);
}
 
Записан
cya-st
Гость
« Ответ #6 : Май 23, 2010, 11:20 »

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


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