Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Отмена начатой печати(страницы) [D3, Win2k]


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

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

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


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

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


clickmaker   (2007-08-20 16:49:00) [2]


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

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


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

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


Anatoly Podgoretsky   (2007-08-20 15:14:00) [4]

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


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

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


Anatoly Podgoretsky   (2007-08-20 15:08:00) [6]

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо