Главная страница
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.024 c
1-1183635629
Tack
2007-07-05 15:40
2007.09.16
Как при открытии TOpenDialog задать формат отображения файлов?


2-1187868785
Галинка
2007-08-23 15:33
2007.09.16
Панель инструментов из DLL


11-1165459419
ebz
2006-12-07 05:43
2007.09.16
BitBtn without border


15-1185599882
IMHO
2007-07-28 09:18
2007.09.16
Шведский стол


2-1187444632
nord489
2007-08-18 17:43
2007.09.16
Форма поверх остальных окон.