* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна!
Применение методов формы
7 февраля 2009
Методы применяются для исполнения тех или иных действий. Методы, являющи- еся членами класса, выполняют действия, составляющие функциональность дан- ного класса. Любая форма инкапсулирует базовый набор функций, унаследован- ный от класса System. Windows. Forms. Form, куда входят методы, управляющие ото- бражением формы и доступом к ней в пользовательском окружении. Вот некото- рые из них:
• Form. Show • Form. Show Dialog • Form, Activate • Form. Hide • Form. С lose Для вызова любого из этих методов необходима ссылка на форму, то есть в па- мяти должен быть заранее созданный экземпляр формы. При запуске приложение автоматически создает экземпляр стартовой формы в дополнение к тем экземпля- рам форм, которые создаются в коде. Внутри класса формы можно ссылаться на текущий экземпляр этой формы по- средством ключевого слова Me (Visual Basic) или this (C#). Допустим, нужно напи- сать метод, изменяющий цвет фона формы. Поскольку этот код воздействует толь- ко на текущий экземпляр формы, задачу удается решить лишь при помощи указан- ного ключевого слова. Вот пример метода, модифицирующего заголовок формы: Visual Basic .NET Эта команда модифицирует заголовок текущего экземпляра формы Me. Text = "This is the active form" Visual C# // Эта команда модифицирует заголовок текущего экземпляра формы this. Text = "This is the active form"; Методы Show и ShowDialog Пользователи работают только с видимыми формами. Чтобы сделать форму види- мой, вызовите метод Form.Show, который загружает экземпляр класса формы в па- мять, отображает его на экране и передает ему фокус ввода, при этом свойство Visible автоматически устанавливается в true. Если экземпляр формы уже загружен, но пока не видим (например, если его свойство Visible установлено в false), вызов метода Form.Show даст тот же результат, что и установка свойства Visible в (те. Метод Form.ShowDialog выполняет те же действия, что и Form.Show, но делает окно формы модальным. Это означает, что другим формам приложения не удастся получить фокус, пока не закрыта форма, показанная при помощи метода Form.Show- Dialog. Сделав окно формы модальным, вы заставите пользователя выполнить не- которое действие на этой форме, и только после этого он сможет продолжить рабо- ту с приложением. Например, метод Form.ShowDialog позволяет оповестить пользо- вателя о том, что дискета недоступна. Ниже показан пример кода, демонстрирую- щий применение методов Form.Show и Form. Show Dialog'. Visual Basic .NET Этот пример предполагает наличие класса формы DialogForm Dim myForm as New DialogFormf) Отобразить форму как обычное окно myForm.Show() ' Отобразить форму как модальное окно myForm.ShowDialogC) Visual C# // Этот пример предполагает наличие класса формы DialogForm DialogForm myForrn = new DialogFormf); // Отобразить форму а обычном окне tnyForm. Show(); // Отобразить форму в модальном окне myForm. ShowDialogO; Метод Activate Если форма видима, но у нее нет фокуса, можно передать ей фокус, вызвав метод Fortn.Activate из формы активного приложения. При этом форма активируется и по- лучает фокус ввода. Если вызвать этот метод в окне приложения, у которого в текущий момент нет активных форм, окно этого приложения на панели задач начинает мигать. В любом случае активировать разрешено только видимые форме. Если вызвать этот метод из невидимой формы, он просто вернет управление. Visual Basic .NET myForm.Activatef) Visual C# myForm.Activate(); Метод Hide Чтобы сделать форму невидимой, вызовите метод Form,Hide. Форма остается в па- мяти, но она невидима, пока не будет вызван метод Form,Show или свойство Visible этой формы не будет установлено в true. Метод Form.Hide устанавливает свойство Visible в false (в принципе, аналогичный эффект достигается при установке этого свойства напрямую). Visual Basic .NET myForm.HideO Visual C# myForm.Hide(); Метод Close Чтобы закрыть ненужную форму и удалить ее из памяти, вызовите метод Form. Close. Этот метод закрывает все удерживаемые формой ресурсы и помечает ее как \tycop, подлежащий сбору. После вызова метода Form. Close сделать форму видимой, вы- звав метод Form.Show, не удастся, поскольку ресурсы этой формы уже освобожде- ны. Вызов Form.Close на стартовой форме приложения завершает приложение. Visual Basic .NET myForm.Close() Visual C# myForm.Close(J;