Print Common Dialog API - VB
Формулировка задачи:
Понятно что Googl-ом пользоваться умею и примеров там есть.
Опыт работы с Open/Save как бы не хилый (более чем) в плане всяких хуков и кастомизаций.
Для печати использую следующее:
Но как все подобные "самопалы" что-то неважнецки он выглядит, как ныне подумалось.
Т.е. хочу использовать стандартный.
Но потенциальная проблема кот. не глядя видится такова:
Мне от этого диалога надо получить
1) только имя принтера
Ну может быть
2) (не уверен что мне это надо) номера страниц, ибо природа печатаемых файлов известна и вычленить страницы возможно
Хочу сказать что опции типа:
Диапазон страниц
Число копий
Печать в файл
Кнопка Настройка и все что за ней стоит
мне в этом диалоге не нужны, вредны и только будут сбивать с толку, ибо все равно через printto эти параметры не передашь, посему красиво было бы
1) чего-то задизейблить
2) чего-то скрыть
Т.е. тыкнул в принтер и нажал печать.
Нет ли достойных примеров с учетом пожелания свести к примитиву органы данного диалога?
Опыт работы с Open/Save как бы не хилый (более чем) в плане всяких хуков и кастомизаций.
Для печати использую следующее:
На текущий момент используется "диалог" собственного производства, позволяющий выбрать PrinterName.
Но как все подобные "самопалы" что-то неважнецки он выглядит, как ныне подумалось.
Т.е. хочу использовать стандартный.
Но потенциальная проблема кот. не глядя видится такова:
Мне от этого диалога надо получить
1) только имя принтера
Ну может быть
2) (не уверен что мне это надо) номера страниц, ибо природа печатаемых файлов известна и вычленить страницы возможно
Хочу сказать что опции типа:
Диапазон страниц
Число копий
Печать в файл
Кнопка Настройка и все что за ней стоит
мне в этом диалоге не нужны, вредны и только будут сбивать с толку, ибо все равно через printto эти параметры не передашь, посему красиво было бы
1) чего-то задизейблить
2) чего-то скрыть
Т.е. тыкнул в принтер и нажал печать.
Нет ли достойных примеров с учетом пожелания свести к примитиву органы данного диалога?
Решение задачи: «Print Common Dialog API»
textual
Листинг программы
<font color="blue">Private</font> <font color="blue">Type</font> DEVMODE dmOrientation <font color="blue">As</font> <font color="blue">Integer</font> dmPaperSize <font color="blue">As</font> <font color="blue">Integer</font> dmPaperLength <font color="blue">As</font> <font color="blue">Integer</font> dmPaperWidth <font color="blue">As</font> <font color="blue">Integer</font> <font color="blue">End</font> <font color="blue">Type</font> <font color="blue">Sub</font> qq() <font color="#00AA00">'</font> <font color="#00AA00">'To handle long printer names - Обрабатывать длинные имена принтера</font> CopyMemory the_DevName, <font color="blue">ByVal</font> lpDevName, Len(the_DevName) LongPrinterName = <font color="blue">Mid</font>$(the_DevName.extra, _ the_DevName.wDeviceOffset - the_DevName.wDriverOffset + <font color="darkblue"><b>1</b></font>) LongPrinterName = Left$(LongPrinterName, _ InStr(LongPrinterName, Chr$(<font color="darkblue"><b>0</b></font>)) - <font color="darkblue"><b>1</b></font>) <font color="blue">End</font> <font color="blue">Sub</font>
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д