Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: alexman от Октябрь 03, 2012, 13:23



Название: Печать определенных страниц не работает.
Отправлено: alexman от Октябрь 03, 2012, 13:23
Использую для просмотра QPrintPreviewDialog. Все замечательно. При печати указываю только первую страницу. Все равно печатает все страницы. В чем проблема?

Qt 4.8.3, Win XP 32


Название: Re: Печать определенных страниц не работает.
Отправлено: alexman от Октябрь 04, 2012, 09:11
В общем проблема ясна. Сигнал paintRequested отвечает и за вывод в preview-диалоге, и за печать на принтере. То есть диапозон надо отслеживать в привязанном слоте.

Код:
        int fromPage = 0, toPage = INT_MAX;
if (printer->printRange() == QPrinter::PageRange) {
fromPage = printer->fromPage() - 1;
toPage = printer->toPage() - 1;
}