Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.09.16;
Скачать: CL | DM;

Вниз

Отмена начатой печати(страницы)   Найти похожие ветки 

 
лесник ©   (2007-08-20 14:56) [0]

Доброго времени суток!

У меня при печати при фильтрации данных возникают пустые страницы. Подскажите как можно отменить при печати последюю созданную страницу? Методов в классе TPrinter что-то не нашел :(
....
Printer.BeginDoc;
while true do
begin
 if HasData
 begin
   Printer.NewPage;
   PrintData;//печать данных, с фильтрацией
   if PageIsEmpty then
    //как-то отменить посленюю соданную страницу
 end
else
 break;
end;
Printer.EndDoc;
....


 
Anatoly Podgoretsky ©   (2007-08-20 15:08) [1]

Что такое PrintData и что такое PageIsEmpty


 
лесник ©   (2007-08-20 15:11) [2]

это мояпроцедура для печати на принтере PrintData
PageIsEmpty - переменная которая если=true то ничего не напечаталось в PrintData
---это не так важно - вопрос как отменить посл. созданную страницу. может с Canvas что сделать?


 
Anatoly Podgoretsky ©   (2007-08-20 15:14) [3]

Вот в PrintData дата и надо определять пустая страница или нет.


 
лесник ©   (2007-08-20 15:18) [4]

это все понятно что сначала обработать данные потом уже создавать или нет страницу:) это просто пример.
мне хотелось бы узнать  - можно и как? отменить созданную страницу на принтере


 
clickmaker ©   (2007-08-20 16:49) [5]


> отменить созданную страницу на принтере

если она уже ушла в набор, то... страница - не воробей
если еще в очереди спулера, то Printer.Abort


 
Юрий Иванов   (2007-08-21 09:55) [6]

Надо изменить процедуру PrintData и убрать Printer.NewPage в нее. Сделать булевскую переменную PageIsEmpty. Как только в PrintData выяснилось, что строку надо печатать, то если PageIsEmpty = true, то присвоить ей false и выполнить Printer.NewPage. А завершение можно оставить как есть - если PageIsEmpty = false, то выполнить Printer.EndDoc;



Страницы: 1 вся ветка

Текущий архив: 2007.09.16;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.046 c
5-1160204158
xolin
2006-10-07 10:55
2007.09.16
Как заблокировать CloseUp по LButtonClick для ComboBox?


2-1187604955
JetuS
2007-08-20 14:15
2007.09.16
Как получить имя и класс компонента, имеющего фокус?


15-1187263645
мирроорр
2007-08-16 15:27
2007.09.16
вопрос про создание беспроводной сети


3-1179271692
ArchValentin
2007-05-16 03:28
2007.09.16
Работа с таблицами в базе Microsoft Access


15-1187613383
pasha_golub
2007-08-20 16:36
2007.09.16
SYN flood: как побороть?