
- •Содержание
- •Введение
- •2. Основные контролы (компоненты) Windows- приложения
- •2.2. Контрол TextBox
- •2. 3. Контрол ComboBox
- •2.4. Контрол ListBox
- •Панели GroupBox и Panel
- •2. 6. Класс Random и его функции
- •Вывод текстовой информации
- •3.1. Вывод текстовой информации в контрол Label
- •3.2. Вывод текстовой информации в контрол TextBox
- •3.3. Программный вывод текста в TextBox
- •3.4. Вывод текстовой информации в контрол RichTextBox
- •Лабораторная работа № 2 Работа с контролами CheckBox, RadioButton и диалоговыми окнами MessageBox
- •1. Контрол CheckBox
- •2. Контрол RadioButton
- •3. Диалоговые окна MessageBox
- •Лабораторная работа № 3 Построение графиков функций
- •Лабораторная работа № 4 Создание Windows приложения «Редактор текста» в среде разработки Visual Studio
- •Создание редактора текста
- •Работа с файлами документа
- •Печать документа
- •Закрытие главного окна редактора текста
- •Реализация функций меню «Правка»
- •Реализация функций меню «Формат»
- •Выравнивание параграфов
- •Реализация функций меню «Справка»
- •Создание инструментальной панели
- •Строка состояния
- •Лабораторная работа № 5
- •Создание диаграммы вариантов использования
- •В среде проектирования Rational Rose
- •Общие сведения о Rational Rose
- •Диаграммы вариантов использования
- •Пример диаграммы ви для финансовой торговой системы приведен на рис.5.3.
- •Связи «расширение» и «использование». Кроме связей между действующими лицами и ви на диаграмме существуют 2 других типа связей. Это связи «расширение» и «использование».
- •Создание диаграммы вариантов использования
- •Добавление ассоциаций
- •Добавление связи расширения
- •Добавление описаний к вариантам использования
- •Добавление описаний к действующему лицу
- •Прикрепление файла к варианту использования
- •Лабораторная работа № 6 Создание диаграммы классов в среде проектирования Rational Rose
- •Создание диаграммы классов Настройка
- •Технология создания диаграммы классов
- •Добавление атрибутов и операций
- •Настройка
- •Добавление нового класса
- •Добавление атрибутов
- •Добавление операций к классу Orderltem
- •Подробное описание операций с помощью диаграммы классов
- •Подробное описание операций с помощью браузера
- •Подробное описание операций
- •Добавление связей
- •Добавление ассоциаций
- •Лабораторная работа№ 7 Создание диаграмм взаимодействия в Rational Rose
- •Создание диаграммы взаимодействия
- •Настройка
- •Создание диаграммы Последовательности
- •Добавление на диаграмму действующего лица и объектов
- •Добавление сообщений на диаграмму
- •Добавление на диаграмму дополнительных объектов
- •Назначение ответственностей объектам
- •Соотнесение объектов с классами
- •Соотнесение сообщений с операциями
- •Создание кооперативной диаграммы
- •Создание кооперативной диаграммы
- •Добавление действующего лица и объектов на диаграмму
- •Добавление сообщений на диаграмму
- •Добавление на диаграмму дополнительных объектов.
- •Назначение ответственностей объектам
- •Соотнесение объектов с классами (если классы были созданы при разработке описанной выше диаграммы последовательности)
- •Соотнесение объектов с классами (если вы не создавали описанную выше диаграмму последовательности)
- •Соотнесение сообщений с операциями (если операции были созданы при разработке описанной выше диаграммы последовательности)
- •Соотнесение сообщений с операциями (если вы не создавали описанную выше диаграмму последовательности)
- •Лабораторная работа№ 8 Создание диаграмм состояний в Rational Rose
- •Описание состояний
- •Добавление переходов
- •Описание переходов
- •Лабораторная работа № 9 Тестирование программ
- •Лабораторная работа № 11 Тестирование программ
- •Лабораторная работа № 12 Тестирование программ
- •Список литературы
3.3. Программный вывод текста в TextBox
Создадим проект решения для вывода текстовой информации с контролом TextBox, показанный на рисунке 1.15.
Создание кнопочной панели, меню и панели статуса уже рассмотрены в предыдущих параграфах раздела, поэтому здесь приводятся лиш коды обработчиков событий для кнопок. У кнопок установлено свойство Tag соответственно в 1, 2 и 3 и события MouseHover и MouseLeave для всех кнопок замкнуты на toolStripButton1_MouseHover и toolStripButton1_MouseLeave. Для вывода подсказок использован контрол toolStrip, а для вывода подсказок в панель статуса StatusStrip и соответствующий код.
private void toolStripButton1_MouseHover(object sender, EventArgs e)
{
int i = Convert.ToInt32((sender as ToolStripButton).Tag);
switch (i)
{
case 1:
toolStripStatusLabel1.Text = "Output Text";
break;
case 2:
toolStripStatusLabel1.Text = "Delete String";
break;
case 3:
toolStripStatusLabel1.Text = "Close Form";
break;
}
}
private void toolStripButton1_MouseLeave(object sender, EventArgs e)
{
toolStripStatusLabel1.Text = "";
}
Рисунок 1.15 - Проект решения для вывода текстовой информации
3.4. Вывод текстовой информации в контрол RichTextBox
Удалим с формы контрол TextBox и на его место поместим контрол RichTextBox. Рассмотрим его свойство на страничке Properties. Большинство свойств аналогичны описанным ранее для уже рассмотренных контролов. Рассмотрим те свойства, которых не было у уже использованных нами контролов.
Свойство AcceptButton позволяет закрепить кнопку, клик которой будет выполняться при нажатии Enter когда RichTextBox в фокусе (например, после ввода).
Свойство WordSelection если оно true, позволяет пользователю двойным щелчком на любой части слова в контроле сделать его выделенным.
Свойство BulletIndent определяет отступ в пикселях текста перечислений (пунктов списка) от иконки соответствующей пункту списка при значении свойства SelectionBullet=true.
Пример из Help С#:
private void toolStripButton1_Click(object sender, EventArgs e)
{
// Очистить все
richTextBox1.Clear();
richTextBox1.SelectionBullet = true;
// Устанавливаем отступ в пикселях для пунктов списков
richTextBox1.BulletIndent = 50;
richTextBox1.SelectionFont = new Font("Arial", 16);
//Выводим текст на который не влияет установленный
//отступ (SelectionBullet=false)
richTextBox1.SelectedText = "Ниже список\n";
richTextBox1.SelectionFont = new Font("Arial", 12);
//Далее список
richTextBox1.SelectionBullet = true;
richTextBox1.SelectionColor = Color.Red;
richTextBox1.SelectedText = "Яблоко" + "\n";
richTextBox1.SelectionFont = new Font("Arial", 12);
richTextBox1.SelectionColor = Color.Orange;
richTextBox1.SelectedText = "Апельсин" + "\n";
richTextBox1.SelectionFont = new Font("Arial", 12);
richTextBox1.SelectionColor = Color.Purple;
richTextBox1.SelectedText = "Виноград" + "\n";
richTextBox1.SelectionBullet = false;
richTextBox1.SelectionFont = new Font("Verdana", 10);
richTextBox1.SelectedText = "Список закончился\n";
}
Результат вывода показан на рисунке 1.16.
Рисунок 1.16 – Результат вывода
ИНДИВИДУАЛЬНЫЕ ЗАДАНИЯ
Используя компоненты (контролы) списка, редактируемого ввода и кнопки (либо другие компоненты ввода и отображения текстовой информации), выполните по нажатию кнопки
Вывод списка цветов радуги в упорядоченном и произвольном порядке.
Ввод слова и вывод его зеркального отображения.
Многократный вывод стихотворения «Пусть всегда будет солнце».
Ввод фамилии студента и отображение его успеваемости в произвольном порядке (например, «Иванов - двоечник»).
Вывод прямой квадратичной последовательности (т.е. 1,4,9,16 и т.д.).
Вывод всех градусов окружности через указанный промежуток.
Вывод планет солнечной системы (начиная с Меркурия) и следующей по списку планеты.
Вывод результатов расчета расстояния, пройденного телом через 5,10…30 секунд после падения (V0=0).
Вывод знаков зодиака в произвольном порядке (без повторов с указанием конца списка)
10. Вывод колоды карт по старшинству (сформировать 2 массива – «масть» и «величина»).