Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Ватсон К. -> "С#" -> 194

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 188 189 190 191 192 193 < 194 > 195 196 197 198 199 200 .. 404 >> Следующая


Прантинум: добавление диалогового окна PrintDiaiog

1. Добавьте в форму компонент PrintDiaiog из окна с инструментами. Измените его свойство Name на dlgPrint, а свойство Document — на printDocument.

Замените реализацию обработчика событии “щелчок мышью" для меню Print на следующий код:

private void miFilePrint_Click(object sender. System.EventArgs e)

( .

if (dlgPrint.ShowDialogО ¦¦ DialogfReealt.OK)

(

printDocument.Print (11

)

)

2. Постройте и запустите приложение. Выбрав File | Print, вы откроете диалог PrintDiaiog. Теперь есть возможность выбрать принтер, на котором вы будете распечатывать документ (см. оис. слева).

Опции диалогового окна вывода на печать

В программе simpleEditor мы не вносили никаких изменений В свойства PrintDiaiog, Но у этого диалогового окна также имеется несколько опций. В приведенном выше диалого-иом окне имеющиеся опцнн разбиты на три группы: Printer, Print Range и Copies.

? В группе Printer можно выбрать не только принтер — в ней также существует опция Print to File (вывод в файл). По умолчанию эта опция находится в рабочем состоянии, но не является выбранной, Установка флажка в соответствующем окне выбора дает возможность пользователю направлять выходной поток, предназначенный для вывода на печать, в некоторый файл вместо принтера. Эта опция может быть отключена, если присвоить свойству AllowPrintToFile значение false. Если пользователь выбирает эту опцию, то метод printDocument. Print о открывает диалоговое окно, представленное на рисунке справа,

В названном окне запрашивается нмя файла, в который следует записывать выходной поток, предназначенный для вывода на печать.

|PH(VH0 Flit '2l*i
QiAxA F.0- (Jani
ok |
1 ' C*-:H


Fwle-Момс'

Suhn; ' Явлф 1

Тик Хеш Deed' NSI2S

Whole: )¦ ten 1

Cornmc

Рвж p ¦ - ¦

(Г у

С -

i? ¦ ¦ г»

ii *!

Г Piriloffc

ок
Использование диалоговых окоп

417

? В разделе диалогового окна Print Range можно выбрать только опцию АН (псе) — опции Pages и Selection по умолчанию отключены.

__ С тем, каким образом эти опции могут быть реализованы, мы познакомимся в следующем разделе,

? Группа Copies позволяет задавать число получаемых копий.

Вывод на печать выбранного текста

Если требуется реализовать возможность вывода на печать выбранного только текста, то для этого необходимо активизировать соответствующий переключатель, присвоив свойству AllowSelection значение true. Для этого также необходимо из, менить код, отвечающий за вывод на печать, с тем чтобы он выводил на печать только выбранный текст.

Практикум: добавление возможности вывода на печать выбранного текста

1. Добавьте код, выделенный серым цветом, в обработчик событий “щелчок мышью” кнопки Print:

private void raiFilePrint_Clic)c(object sender. System.EventArgs e)

(

if (textBoxEdit.SelectedText 1= •*) t

dlgPrint.AllowSelectian = true;

i

if (dlgPrint.ShowDialog() “ DialogResult.OK)

(

printDocument.Print();

)

)

В нашей программе все строки, подлежащие выводу на печать, задаются в обработчике OnBeginPrintо. В реализацию этого метода также необходимо внести некоторые изменения:

private void OnDeginPrint(object sender,

System.Drawing.Printing.PrintEventArgs e)

(

char[] param = ('\n');

if (dlgPrint.PrinterSettings.FrintRange ““ PrintRani.Selection) С

lines = textBoxEdit.SelectedText.Split(param);

>

else

{

lines = textBoxEdit.Text.Split(param)f

>

int i = Oj

chard triroParam = ('\r'); foreach (string s in lines)

(

linea[i++] = s.TrimEnd(trimParam);

Теперь можно построить и запустить программу.

Откройте какой-либо файл, выберите некоторый текст, запустите диалоговое окно вывода на печать с помощью меню File | Print
418

Глава 15

pa

;б*1

iW«_. ¦ ¦

itm jPk*hj

Ейсл -V'.*»:. з ¦ aib *№o Tn>z

-.«WiV ViW.ui

Гций>

Beni i»i J

T>'n4f 4hf*

-C^OCJ -

hiei * cl tub**

ё»

OK

и выберите кнопку Selection в группе Print Range (см. рис. слева). Если с такими установками нажать на кнопку Print, то на печать будет выведен только выбранный текст.

Как это работает

Мы присваиваем свойству AllowSelection значение true только в том случае, если есть какой-либо выбранный текст. Перед тем как открыть PrintDiaiog, необходимо проверить, выбран какой-либо текст или нет, т, е. убедиться В ТОМ, ЧТО значение свойства SelectedText не есть null. Если есть какой-либо выбранный текст, то свойству AllowSelection лрисваипа-

. ется значение true:

1 ? (textBoxEdlt.SeleccedTexc i= ")

[

dlgPrint.AllowSelection = true;

)

Метод onBeginPrinto вызывается в начале каждого задания по выводу на печать. Обращаясь К свойству PrintDiaiog.PrinterSettings.PrintRange МЫ получаем информацию о том, что пользователем выбрана опция Selection, Свойство PrintRange возвращает значение перечислимого типа PrintRange, которое может быть одним из следующих: AllPages (все страницы), selection (выбор) или somePages (некоторые страницы):
Предыдущая << 1 .. 188 189 190 191 192 193 < 194 > 195 196 197 198 199 200 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.