События в Windows-приложениях

Событие – это сообщение, которое возникает в различных точкахисполняемого кода при выполнении определённых условий.События предназначены для того, чтобы иметь возможность предусмотреть реакцию программного обеспечения.

Обработчики событий не могут возвращать ничего, кроме void. В них отсутствует точка, которая могла бы служить для возврата значения. Обработчики должны принимать два параметра. Первый параметр является ссылкой на объект, который сгенерировал событие. Второй параметр должен быть ссылкой либо на базовый класс .NET System.EventArgs, либо на производный класс. Класс EventArgs представляет собой общий базовый класс для всех уведомлений о произошедших событиях. В окне свойств каждого элемента управления на вкладке событий перечислены все доступные события для этого элемента ( см. рисунок 10.9)

Рисунок 10.9 – Вкладка событий

Двойной щелчок в поле выбранного свойства перемещает нас в режим дизайна, где уже сгенерированы все объекты для обработки данного события и нам остается только написать код для метода-обработчика. На рисунке выбрано событие Click, это же событие выбирается по умолчанию при двойном щелчке на элементе управления "кнопка".

События мыши

В Интернете часто встречается шуточная программка, представляющая собой диалоговое окно с двумя кнопками. Для ответа на предлагаемый вопрос следует нажать на одну из двух кнопок, причем вторая кнопка при наведении на нее курсора начинает "убегать" от него. Вы можете встретить реализацию этой шутки, написанную на многих языках — от C до Flash-приложений. Сделаем что-то подобное на C#. Создаем новое Windows-приложение и называем его SocOpros. Из окна Toolbox перетаскиваем на форму две кнопки Button и надпись Label.

Устанавливаем свойства элементов управления и формы( см. таблицы 10.2 – 10.4)

Таблица 10.2 – Свойства формы

Form1, форма, свойство Значение
FormBorderStyle Fixed3D
Icon Путь E:\Program Files\Microsoft Visual Studio .NET2003\Common7\Graphics\icons\Computer\W95MBX02.ICO
Size 344; 176
Text Социологический опрос
label1, свойство Значение
Size
Bold true
Location 32; 28
Size 272; 32
Text Вы довольны своей зарплатой?

 

Таблица 10.3 – Свойства элемента Button1 Таблица 10.4 – Свойства элемента Button2

Button1, свойство Значение   Button2, свойство Значение
Name btnyes   Name btnno
Location 67; 92   Location 195; 92
Text Да   Text Нет

Щелкаем дважды по кнопке "Да". В обработчике этой кнопки вставляем следующий код:

private void btnyes_Click(object sender, System.EventArgs e)

{

MessageBox.Show("Мы и не сомневались, что Вы так думаете!");

}

Выделяем кнопку "Нет". Открываем окно Properties. Переключаемся в окно событий и дважды щелкаем в поле MouseMove

В обработчике этого события связываем движение мыши с координатами кнопки и устанавливаем координаты кнопки, куда она будет возвращаться, если во время своего движения выйдет за указанную область:

private void btnno_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)

{

btnno.Top -= e.Y;

btnno.Left += e.X;

if (btnno.Top < -10 || btnno.Top > 100) btnno.Top = 60;

if (btnno.Left < -80 || btnno.Left > 250) btnno.Left = 120;

}

Запустите приложение. Теперь, при выборе "Да" появляется окно с надписью, а при попытке нажать на кнопку "Нет" она "убегает".(см. рисунок 10.10)

Рисунок 10.10 – Результат работы программы

С событиями мыши связано большинство инструментов во многих программах, а для некоторых, например, графических, — это основа всего взаимодействия с пользователем. Другие события мыши — такие как MouseDown, MouseEnter, MouseUp — могут быть использованы для получения необычной реакции на действия пользователя в этом приложении.

 

Контрольные вопросы:

1.Что понимается под термином «форма»?

2.Что понимается под термином «событие»?

3.Как создать новое Windows приложение в среде .NET?

4.Как добавить новый компонент на форму?

5.Какие основные свойства и события имеет форма?

6.Какие основные свойства и события имеют элементы управления?








Дата добавления: 2015-10-26; просмотров: 880;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.01 сек.