Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# .NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
Luck999
3 / 3 / 2
Регистрация: 16.12.2011
Сообщений: 21
1

Проверить, распечатался документ или нет

16.12.2011, 07:34. Просмотров 1330. Ответов 7
Метки нет (Все метки)

Возникла следующая проблема:
хочу обработать отпечатался ли документ или нет. Почитал, вроде нужно использовать EndPrint. Но как то не работает. Можно кто подскажет, желательны примеры.

Часть моей писанины.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
void Printer { 
printDoc = new PrintDocument();
printDoc.PrintPage += new PrintPageEventHandler(this.printDoc_PrintPage);
PrintPreviewDialog predlg = new PrintPreviewDialog();
predlg.Document = printDoc;
predlg.ShowDialog();
printDoc.Print();
printDoc.EndPrint +=new PrintEventHandler(printDoc_EndPrint);
 
}
 
void printDoc_PrintPage(object sender, PrintPageEventArgs e)
{
Graphics g = e.Graphics;
g.DrawString("",Font, new SolidBrush(Color.Black), 20, 20);
}
 
void printDoc_EndPrint(object sender, PrintEventArgs e)
{
MessageBox.Show("Ура конец печати");
}
Может у меня чего не правильно. Хочу щас вывести пустую страницу и получить сообщение об окончании печати.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.12.2011, 07:34
Ответы с готовыми решениями:

Как проверить, существует ли директория или нет
Доброе время суток. Вот столкнулся с такой задачкой, нужно проверить существует ли директория,...

Как проверить подключено ли какое нибудь устройство к com порту или нет?
Как проверить подключено ли какое нибудь устройство к com порту или нет?

Алгоритм RC6: при расшифровке проверить, правильный был ключ или нет
После расшифровки файла как его проверить в C# правильный был ключ или нет!!!

Проверить есть такой юзер или нет в таблице
Здрасти! Есть таблица "admins" и два столбика name и pass. НУ и два текст бокса Имя и Пароль....

Проверить, есть ли записи в RecordSet'е или нет.
Здравствуйте! Мне вот такая штука понадобилась: надо проверить, есть ли записи в RecordSet'е или...

7
asd321
Мохаммед Али
130 / 68 / 5
Регистрация: 14.08.2009
Сообщений: 916
16.12.2011, 09:51 2
не знай чо вы там писали вообщем вот как отправить ан печать а событие отлавливания окончания печати и вуас прописано
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
  //отправить на печать
        private void PrintDoc_Click(object sender, EventArgs e)
        {
            if (printDialog1.ShowDialog() == DialogResult.OK)
            {
                PrintDocument def = new PrintDocument();
 
                def.PrintPage += new PrintPageEventHandler(PRD);
                def.DocumentName = "Document1";
                def.PrinterSettings = printDialog1.PrinterSettings;
                def.Print();
            }
        }
 
        //передача графики изображения для печати
        void PRD(object sender, PrintPageEventArgs e)
        {
            Graphics formGraphics = e.Graphics;
            memoryImage = CreateMemoryImage();
             //метод рисования чего либо на листике
            formGraphics.DrawImage(memoryImage,0,0);
 
        }
0
Luck999
3 / 3 / 2
Регистрация: 16.12.2011
Сообщений: 21
16.12.2011, 10:18  [ТС] 3
Так это не то, нет необходимости вызывать меню. Нужно просто отослать на печать и получить ответ напечатан или нет.
0
asd321
Мохаммед Али
130 / 68 / 5
Регистрация: 14.08.2009
Сообщений: 916
16.12.2011, 10:35 4
Цитата Сообщение от Luck999 Посмотреть сообщение
Так это не то, нет необходимости вызывать меню. Нужно просто отослать на печать и получить ответ напечатан или нет.
просто уберите условие if
0
16.12.2011, 10:35
Luck999
3 / 3 / 2
Регистрация: 16.12.2011
Сообщений: 21
16.12.2011, 10:44  [ТС] 5
В общем то, что я кинул заработало. Перегрузил студию. Работает след образом:
1.Формируется документ
2.Посылается принтеру на печать(но не печатает)
3.Появляется сообщение, когда нажали кнопку ок. Пошла печать
4.Ну и результат напечатанный.

А да, забыл сказать поменял местами. Теперь так:
C#
1
2
printDoc.EndPrint +=new PrintEventHandler(printDoc_EndPrint);
printDoc.Print();
А если как было изначально. То документ уже шел на печать и инфы о нем нету. В обработку завершения печати printDoc.EndPrint он не входит.

Если есть способ узнать напечатан ли документ по факту выхода листка из принтера, рад был бы услышать.
Пролистал ряд книжек по шарпу. Инфы не особо. В Петцольде про сам итог нечего не нашел.
0
Qulis
28 / 28 / 8
Регистрация: 13.12.2009
Сообщений: 70
16.12.2011, 10:57 6
Если хотите организовать работу с принтером и узнавать его статус и т.п. используйте PrintJobStatus...
http://msdn.microsoft.com/en-us/library/aa970685.aspx
1
asd321
Мохаммед Али
130 / 68 / 5
Регистрация: 14.08.2009
Сообщений: 916
16.12.2011, 11:00 7
вы не можете в конце метода печати просто присвоить значение булевой переменной? зачем извращаться то пытаетесь
C#
1
printDoc.EndPrint +=new PrintEventHandler(printDoc_EndPrint);
у вас что это событие не работает?
1
Luck999
3 / 3 / 2
Регистрация: 16.12.2011
Сообщений: 21
16.12.2011, 11:08  [ТС] 8
Цитата Сообщение от Qulis Посмотреть сообщение
Если хотите организовать работу с принтером и узнавать его статус и т.п. используйте PrintJobStatus...
http://msdn.microsoft.com/en-us/library/aa970685.aspx
Спасибо как-то я про это запамятовал.

Добавлено через 3 минуты
Цитата Сообщение от asd321 Посмотреть сообщение
вы не можете в конце метода печати просто присвоить значение булевой переменной? зачем извращаться то пытаетесь
C#
1
printDoc.EndPrint +=new PrintEventHandler(printDoc_EndPrint);
у вас что это событие не работает?
Щас работает. Ну сообщения впоследствии не будет конечно.
Вы предлагаете сразу сделать:
printDoc.print();
bool printed=true;

так???? Но тогда может и не напечататься.

Если имели ввиду убрать сообщения из обработчика окончания печати, то я его уберу и буду возвращаться чтонить типа bool или инта. Еще не решил
0
16.12.2011, 11:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.12.2011, 11:08

Как проверить readonly file или нет?
Кто знает как проверить readonly file или нет?

Можно ли проверить, загружена ли УЖЕ картинка или нет?
Допустим, есть в HTML-коде тег <IMG name='Picture1' SRC='1.gif'> Можно ли на клиенте...

Как проверить произошли изминение файла на сервере или нет?
Здравствуйте! Столкнулся с проблемой: как при помоще asp.net проверить произошли изминение файла на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru