Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методичка ПрИн академия 2013.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
5.56 Mб
Скачать

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. Вывод списка цветов радуги в упорядоченном и произвольном порядке.

  2. Ввод слова и вывод его зеркального отображения.

  3. Многократный вывод стихотворения «Пусть всегда будет солнце».

  4. Ввод фамилии студента и отображение его успеваемости в произвольном порядке (например, «Иванов - двоечник»).

  5. Вывод прямой квадратичной последовательности (т.е. 1,4,9,16 и т.д.).

  6. Вывод всех градусов окружности через указанный промежуток.

  7. Вывод планет солнечной системы (начиная с Меркурия) и следующей по списку планеты.

  8. Вывод результатов расчета расстояния, пройденного телом через 5,10…30 секунд после падения (V0=0).

  9. Вывод знаков зодиака в произвольном порядке (без повторов с указанием конца списка)

10. Вывод колоды карт по старшинству (сформировать 2 массива – «масть» и «величина»).