Лабораторная работа №6

Тема. Работа со стандартными диалоговыми окнами

 

Цель. Научиться работать со стандартными диалоговыми окнами открытия/сохранения файлов, выбора шрифта, цвета, предварительного просмотра документов. Научиться создавать собственные диалоговые окна .

 

Вы должны.

1. Ознакомиться с принципами создания и работы стандартных диалоговых окон.

2. Изучить основные свойства стандартных диалоговых окон.

3. Научиться создавать собственные диалоговые окна.

 

Условие лабораторной работы

Создать приложение, на форме которого будет расположено поле для ввода форматированного текста (RichTextBox) и меню. Можно воспользоваться шаблоном MDI-приложения, созданным в лабораторной работе №5, но обязательно заменить обычное текстовое поле компонентом RichTextBox.

Меню должно включать в себя пункты «Открыть файл», «Сохранить файл», «Шрифт», «Цвет», «Предварительный просмотр», «О программе». При выборе пункта меню должно вызываться соответствующее диалоговое окно. При выборе пункта меню «О программе» – диалоговое окно или форма, созданные пользователем.

Измените свойства компонента OpenFileDialog так, чтобы можно было открывать только файлы форматов txt и rtf. Содержимое выбранного файла должно отображаться в RichTextBox.

При сохранении файла содержимое RichTextBox должно записываться в указанный файл. Если файл уже существует, должен быть задан вопрос о перезаписи файла.

При работе с диалоговыми окнами выбора шрифта и цвета, все изменения должны применяться к выделенному фрагменту текста элемента RichTextBox.

При обращении к предварительному просмотру, на экране должно быть отображено содержимое RichTextBox в том виде, в каком оно будет выведено на печать.

Для реализации функции печати документа необходимо изучить и задействовать следующий фрагмент кода:

 

Public PrintDocument1 As New System.Drawing.Printing.PrintDocument — обьявляем переменную PrintDocument1 типа PrintDocument, в которой в будущем будут храниться данные, с которыми документ отправится на печать

 

Private Sub pd_PrintPage(ByVal sender As Object, ByVal ev As Sytem.Drawing.Printing.PrintPageEventArgs) — создаем функцию pd_PrintPage(), в которой задаем параметры печатаемого документа

Dim yPos As Single = ev.MarginBounds.Top — в yPos заносим координату по оси Y верхнего края прямоугольника, в котором будет размещаться наша страница

Dim leftMargin As Single = ev.MarginBounds.Left — в leftMargin заносим координату по оси X левого края прямоугольника

Dim printFont As New Font("Times New Roman", 16) — в printFont заносим шрифт текста

Dim str As String = Me.RichTextBox1.Text — в str записываем наш текст из RichTextBox1

ev.Graphics.DrawString(str, printFont, Brushes.Black, leftMargin, yPos, New StringFormat) — передаем все наши параметры в метод DrawString, который применит их к нашему тексту

End Sub

 

Для отображения окна «О программе» создайте собственное диалоговое окно или форму, на которых бы отображалось краткое описание программы. Добавьте рисунок, кнопку OK и гиперссылку, по которой бы открывалась какая-либо страница, например, сайт автора программы.

 

Методические указания по выполнению лабораторной работы

Воспользуйтесь свойством Filter для того, чтобы открывать файлы только определенных форматов и методом LoadFile элемента RichTextBox для вывода информации.

При сохранении файла, если файл уже существует, должен быть задан вопрос о перезаписи файла. Для этого используется свойство OverwritePrompt.

Чтобы сделать гиперссылку функциональной, необходимо на событие LinkLabelOnLinkClicked для элемента LinkLabel написать следующий код: System.Diagnostics.Process.Start("адрес ссылки"). При этом в адресе следует указать протоколы открытия сайта в виде: http://www.