Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  4 631

•  TDictionary Custom Sort  6 639

•  Fast Watermark Sources  6 414

•  3D Designer  9 357

•  Sik Screen Capture  6 745

•  Patch Maker  7 132

•  Айболит (remote control)  7 138

•  ListBox Drag & Drop  5 999

•  Доска для игры Реверси  97 585

•  Графические эффекты  7 329

•  Рисование по маске  6 616

•  Перетаскивание изображений  5 488

•  Canvas Drawing  5 865

•  Рисование Луны  5 589

•  Поворот изображения  5 097

•  Рисование стержней  3 666

•  Paint on Shape  2 896

•  Генератор кроссвордов  3 795

•  Головоломка Paletto  3 048

•  Теорема Монжа об окружностях  3 858

•  Пазл Numbrix  2 540

•  Заборы и коммивояжеры  3 251

•  Игра HIP  2 221

•  Игра Go (Го)  2 154

•  Симулятор лифта  2 533

•  Программа укладки плитки  2 174

•  Генератор лабиринта  2 671

•  Проверка числового ввода  2 323

•  HEX View  2 657

•  Физический маятник  2 288

 
скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Диалог прекращения печати



Как мне создать диалог прекращения печати при работе с TPrinter?

Создайте форму с кнопкой "Abort". Обработчик нажатия кнопки должен вызывать Printer.Abort.

Теперь, при запуске печати, вам необходимо показать этот диалог в немодальном режиме методом Show(). Тем не менее, перед показом диалога необходимо деактивировать главную форму приложения, например так:


Application.MainForm.Enabled := false;
AbortDlg.Show;
{ Здесь код печати }
AbortDlg.Close;
Appliction.MainForm.Enable := true;

Имейте в виду, что для правильной логики работы необходимо проверять значение свойства Printer.Aborted. Если пользователь нажал кнопку прекращения печати, эта переменная укажет о необходимости выхода из подпрограммы печати. Но здесь есть небольшой подвох. Printer.Abort предполагает прерывание печати вызовом функции WinProcs.AbortDoc(), но он не делает этого (по крайней мере в Delphi 1). Следовательно, исправляя ошибку Borland, вы должны это делать сами в ответ на нажатие кнопки Abort (в обработчике события onClick).








Copyright © 2004-2025 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте