Программирование >>  Программирование с использованием ajax 

1 ... 137 138 139 [ 140 ] 141 142 143 ... 396


Событие

Описание

Click Происходит при щелчке на элементе управления. В некоторых случаях это событие

происходит также при нажатии пользователем клавиши <Enter>

Doubleclick Происходит при двойном щелчке на элементе управления. Обработка события

Click для некоторых элементов управления, таких как Button, полностью исключает возможность вызова события Doubleclick

DragDrop Происходит по завершении операции перетаскивания и оставления - иначе говоря, при перетаскивании объекта поверх элемента управления и освобождении кнопки мыши пользователем

DragEnter Происходит, когда перетаскиваемый объект перемещается внутрь границ элемента управления

DragLeave Происходит, когда перетаскиваемый объект покидает границы элемента управления

DragOver Происходит, когда объект перетаскивается поверх элемента управления

KeyDown Происходит при нажатии клавиши во время нахождения элемента управления в фокусе. Это событие всегда происходит прежде событий KeyPress и KeyUp

KeyPress Происходит при нажатии клавиши, в то время как элемент управления находится в фокусе. Это событие всегда происходит после события KeyDown и перед событием

KeyUp. Различие между событиями KeyDown И KeyPress СОСТОИТ В ТОМ, ЧТО KeyDown

передает код нажатой клавиши, а KeyPress - соответствующее значение char клавиши.

KeyUp Происходит при освобождении клавиши, в то время как элемент управления находится

в фокусе. Это событие всегда происходит после событий KeyDown и KeyPress

GotFocus Происходит, когда элемент управления получает фокус. Это событие не следует использовать для выполнения проверки допустимости элементов управления. В этом случае вместо него следует применять события validating и Validated

LostFocus Происходит, когда элемент управления теряет фокус. Это событие не следует использовать для выполнения проверки допустимости элементов управления. В этом случае вместо него следует применять события validating и Validated

MouseDown Происходит при помещении указателя мыши над элементом управления и нажатии кнопки мыши. Это событие не эквивалентно событию click, поскольку MouseDown происходит сразу после нажатия кнопки мыши и перед ее освобождением

MouseMove Происходит непрерывно в процессе перемещения указателя мыши над элементом управления

Mouseup Происходит при помещении указателя мыши над элементом управления и освобождении кнопки мыши

Paint Происходит при прорисовке элемента управления

Validated Запускается, когда элемент управления, свойство CausesValidation которого

установлено равным true, готов принять фокус. Это событие запускается по завершении события Validating, и оно указывает на завершение проверки

Validating Запускается, когда элемент управления, свойство CausesValidation которого

установлено равным true, готов принять фокус. Обратите внимание, что проверяемым элементом управления является тот, который теряет фокус, а не тот, который его получает

зуемых событий. Если хотите ознакомиться с полным перечнем событий, обратитесь к документации по .NET Framework SDK.

Таблица 15.2. Часто используемые события класса Control



buUonl System.Windows,Forms.Button

0 (DetaBmdngs)

AutoS Chang l

BackColorChanged

Backgrotr)dImageCh<

BAckgroundlmegeLav

BndngContextChan

CausesVaIidationCh

ChangeUICues

OA button I Cllck

ContextMenuStr()CK

ControlAdded

ContrdRemoved

CursorChangcd

DockChanged

Dreg[>oo

Occurs when the control is ckked.

Puc. 15.5. Отображение списка событий

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

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

Один - использование списка событий в окне Properties (Свойства), отображаемого при щелчке на кнопке с пиктограммой молнии, показанной на рис. 15.5.

Затененное событие - событие элемента управления, используемое по умолчанию. Чтобы добавить обработчик для конкретного события, дважды щелкните на этом событии в списке событий. В результате будет сгенерирован код подписки элемента управления на событие и сигнатура метода обработки этого события. Или же можно ввести имя метода для обработки конкретного события в поле, расположенном рядом с данным событием в списке Events, и после нажатия клавиши <Enter> будет сгенерирован обработчик события с выбранным именем.

Вторая возможность - добавление кода подписки на событие вручную. Мы будем часто применять этот подход в следующей главе, добавляя код в конструктор формы после вызова метода InitializeComponent (). Даже при вводе кода, необходимого для связывания с событием. Visual Studio обнаруживает выполняемое действие и предлагает добавить в код сигнатуру метода, как если бы операция выполнялась из Forms Designer.

Каждый из этих двух подходов требует выполнения двух действий - подписки на событие (т.е. связывания с ним) и создания соответствующей сигнатуры метода обработчика. Двойной щелчок на элементе управления и попытка обработки другого события посредством замены сигнатуры метода события, используемого по умолчанию, на событие, которое действительно нужно обработать, окажется безуспешной - необходимо также изменить код подписки на событие в методе InitializeComponent (). Поэтому упомянутый обходной путь в действительности не может служить быстрым способом обработки конкретных событий.

Теперь можно приступить к рассмотрению самих элементов управления. И мы начнем с того, с который, без сомнения, приходится использовать несчетное количество раз при работе с Windows-приложениями: элемента управления Button.

Элемент управления Button

Когда говорят о кнопке, вероятно, в первую очередь на ум приходит прямоугольная кнопка, на которой можно щелкать для выполнения той или иной задачи. Однако .NET Framework предоставляет класс, производный от класса Control - System. Windows. Forms. ButtonBase, - который реализует основные функциональные возможности, необходимые в элементе управления Button, что позволяет программистам выполнять наследование из этого класса и создавать собственные нестандартные элементы управления Button.



Пространство имен System. Windows . Forms предоставляет три элемента управления, производные от класса ButtonBase: Button, CheckBox и RadioButton. Этот раздел посвящен элементу управления Button (являющемуся стандартной, хорошо известной прямоугольной кнопкой). Остальные два элемента управления освещены в последующих разделах этой главы.

Элемент управления Button присутствует практически в каждом диалоговом окне Windows, которое можно себе представить. В основном кнопка служит для выполнения трех видов задач.

а Закрытие диалогового окна с определенным состоянием (например, кнопки О К и Cancel (Отмена)).

□ Выполнение действия с данными, введенными в диалоговом окне (например, при щелчке на кнопке Search (Поиск) после ввода какого-либо критерия поиска).

□ Открытие другого диалогового окна или приложения (например, кнопки Help (Справка)).

Работа с элементом управления Button очень проста. Обычно она состоит из добавления элемента управления в форму и двойного щелчка на нем для добавления кода в событие Click - как правило, этого достаточно для большинства приложений.

Свойства элемента управления Button

В этом разделе рассмотрены некоторые свойства элемента управления Button. В результате вы получите представление о том, как его можно использовать. Наиболее часто применяемые свойства класса Button (даже если в действительности они определены в базовом классе ButtonBase) перечислены в табл. 15.3. Для ознакомления с полным перечнем свойств, обратитесь к документации .NET Framework SDK.

Таблица 15.3. Часто используемые свойства класса Button Свойство Описание

Flatstyle Изменяет стиль кнопки. Если в качестве стиля установлен Popup, кнопка выглядит плоской до тех пор, пока пользователь не поместит указатель мыши над ней. В этом случае внешний вид кнопки изменяется на трехмерный

Enabled Хотя это свойство наследуется из класса Control, оно указано в этой таблице, по-

скольку очень важно для кнопки. Установка его значения равным false означает, что кнопка становится затемненной и щелчок на ней не вызывает никаких последствий

Image Указывает изображение (растровое, пиктограмму и т.п.), которое будет отобра-

жаться на кнопке

imageAlign Указывает позицию изображения на кнопке

События элемента управления Button

До сих пор наиболее часто используемое событие кнопки - Click. Это событие происходит при каждом щелчке пользователя на кнопке - т.е. при нажатии и отпускании левой кнопки мыши в то время, когда указатель располагается над кнопкой. Следовательно, если нажать левую кнопку мыши и отвести указатель мыши в сторону от кнопки до освобождения кнопки мыши, событие Click не будет запущено. Кроме того, событие Click запускается, когда кнопка находится в фокусе и пользователь нажимает клавишу <Enter>. Это событие всегда нужно обрабатывать при наличии кнопки в форме.



1 ... 137 138 139 [ 140 ] 141 142 143 ... 396

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика