- •Создание Windows-приложения «Редактор текста» в среде разработки Visual Studio содержание
- •Создание редактора текста
- •Добавление меню
- •Переименование меню и строк меню
- •Вставка поля редактирования
- •Обработка событий
- •Работа с файлами документа
- •Создание нового документа
- •Открытие существующего файла
- •Сохранение файла
- •Печать документа
- •Печать документа Добавление программных компонентов для печати
- •Настройка параметров страницы документа
- •Предварительный просмотр документа перед печатью
- •Отображение окна печати документа
- •Закрытие главного окна редактора текста
- •Закрытие главного окна формы
- •Реализация функция меню «правка»
- •Реализация функций меню «правка»
- •Реализация функций меню формат
- •Шрифт символов
- •Цвет символов
- •Стиль символов
- •Выравнивание параграфов
- •Реализация функций меню «справка»
- •Добавление новой формы
- •Отображение формы
- •Создание инструментальной панели
- •Добавление инструментальной панели в окно приложения
- •Добавление изображений в проект.
- •Редактирование кнопок инструментальной панели
- •Строка состояния
- •Строка состояния
Реализация функций меню формат
Прежде чем продолжить работу над нашим приложением, модифицируйте меню Формат, добавив в него строку - Цвет шрифта, а также два меню второго уровня - Начертание (рисунок 6.1) и Выравнивание (рисунок 6.2).
Рисунок 6.1 - Меню второго уровня Начертание
Рисунок 6.2 - Меню второго уровня Выравнивание
Для того чтобы добавить меню второго уровня, Вам нужно вначале ввести с клавиатуры его название (как Вы это делаете для строк меню первого уровня). Затем необходимо ввести названия строк меню второго уровня в поле Type Here, расположенном справа от только что введенной строки первого уровня.
Не забудьте также изменить имена строк меню таким образом, чтобы с ними было легче работать в программе.
Измените названия:
Изменить цвет – menuFormatColor
Начертание - menuFormatCharacterStyle
Жирный – menuFormatCharacterStyleBold
Курсив – menuFormatCharacterStyleItalic
Подчеркнутый – menuFormatCharacterStyleUnderline
Зачеркнутый – menuFormatCharacterStyleStrkeout
Выравнивание – menuFormatParagraphAlignment
По левому краю – menuFormatParagraphAlignmentLeft
По центру – menuFormatParagraphAlignmentCenter
По правому краю – menuFormatParagraphAlignmentRight
Далее создайте обработчики событий для всех строк меню первого и второго уровня, щелкнув их дважды левой клавишей мыши.
Шрифт символов
Чтобы пользователь мог выбирать шрифт фрагмента текста, выделенного в окне редактирования программы SimpleNotepad, перетащите мышью из панели Toolbox в окно дизайнера формы компонент FontDialog.
Этот компонент отображает на экране стандартное диалоговое окно выбора шрифта, показанное на рисунке 6.3.
Рисунок 6.3 - Стандартное диалоговое окно выбора шрифта Font
Чтобы отобразить это диалоговое окно, добавьте вызов метода fontDialog1.ShowDialog в тело обработчика события menuFormatFont_Click, получающего управление при выборе строки Шрифт из меню Формат:
После того как пользователь выбрал нужный ему шрифт, обработчик события переписывает этот шрифт из свойства fontDialog1.Font в свойство richTextBox1.SelectionFont. Свойство SelectionFont позволяет изменить шрифт фрагмента текста, выделенного пользователем (или программой) в окне редактирования.
Цвет символов
Чтобы пользователь мог изменять цвет выделенного фрагмента текста, добавьте в проект компонент ColorDialog, перетащив его значок мышью из панели Toolbox в окно дизайнера форм.
Этот компонент отображает на экране стандартное диалоговое окно выбора цвета (рисунок 6.4).
Рисунок 6.4 - Стандартное диалоговое окно выбора цвета Color
Далее модифицируйте обработчик событий для строки «Изменить цвет» меню «Формат» следующим образом:
Здесь программа вначале отображает диалоговое окно выбора цвета, вызывая для этого метод colorDialog1.ShowDialog. Затем она переписывает выбранный цвет из свойства colorDialog1.Color диалогового окна в свойство richTextBox1.SelectionColor окна редактирования текста. В результате цвет фрагмента текста, выделенного пользователем перед выполнением данной операции, будет изменен.