Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lab_vp1.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
693.76 Кб
Скачать

Разработка Windows приложений с использованием среды Microsoft Visual C# 2005 Express Edition. 24

Лабораторная работа №1. Введение в Windows Forms

Цель: овладеть возможностями использования инструментальных средств программной среды Microsoft Visual C# 2005 Express Edition для проектирования Windows приложений. Научиться создавать и работать с делегатами.

Ход работы (первой части лабораторного занятия).

  1. Обзор инструментальных средств программной среды Microsoft Visual C# 2005 Express Edition для проектирования Windows приложений.

  2. Создать Windows Application с именем Programm1

  3. В окне Properties для Form1 свойству File Name назначить TestForm.cs

  4. На форме разместить Label, TextBox с панели инструментов ToolBox; Button создать в конструкторе формы программно, для этого:

4.1. ПКМ на форме → View Code → скопировать в конструктор формы код:

Button myBtn = new Button();

myBtn.Text = "Вызов второй формы";

myBtn.Size = new Size(135, 23);

myBtn.Location = new Point(12, 238);

this.Controls.Add(myBtn);

4.2. сгенерировать событие onClick() этой кнопки:

написать myBtn.Click += → нажать два раза Tab →

появится код myBtn.Click += new EventHandler(myBtn_Click);

и шаблон события:

void myBtn_Click(object sender, EventArgs e)

{

throw new Exception("The method or operation is not implemented.");

}

5. Создать вторую форму с именем Form2 и реализовать ее вызов нажатием на кнопку myBtn, для этого:

5.1. ПКМ по проекту в Solution Explorer → ADD → Windows Forms;

5.2. в метод myBtn_Click скопировать следующий код, что реализует пример SDI:

Form2 f = new Form2();

f.StartPosition = FormStartPosition.CenterScreen;

f.ShowDialog();

  1. Сменить последовательность загрузки форм, протестировать и вернуть последовательность на первоначальную.

  2. Исследование жизненного цикла формы. Для этого:

    1. создать переменную int x = 0;

    2. последовательно реализовать методы, в которых переопределить значение этой переменной и вывести в TextBox на форме:

    1. Form_Load ()

    2. button1_Click

    3. Form_Deactivate

    4. Form_Аctivate

  1. Работа с делегатами самостоятельно.

8.1. рассмотреть

8.2. В обработчиках событий Load, Closed, Activated и Deactivate в строковую переменную string (с именем lifeTimeInfo) добавляется имя перехваченного события. Обработчик события Closed отображает значение этой строки в окне сообщения:

8.3. В обработчике события Closing задается вопрос о том, действительно ли пользователь желает завершить работу приложения. При этом используется поступающий на вход объект CanselEventArgs.

  1. Создание MDI приложения (MDIapp):

9.1. создать приложение и две формы Form1 и Form2.

9.2. Form1 представляет собой родительскую форму MDI, для этого в конструкторе допишем:

//сделаем текущую форму родительской

this.IsMdiContainer = true;

//создаем экземпляр дочерней формы

Form2 f = new Form2();

//передаем ссылку на дочернюю форму, которую показываем

this.ShowMdiChild(f);

9.3. Сгенерируем метод создания дочерней формы, т.е ПКМ на ShowMdiChild → Generate Method Stub, который примет вид:

private void ShowMdiChild(Form childForm)

{

childForm.MdiParent = this;

childForm.Show();

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]