MyTetra Share
Делитесь знаниями!
Как установить фокус на элемент управления, когда форма загружается в Visual Basic .NET или Visual Basic 2005
Время создания: 24.03.2018 23:12
Раздел: VB
Запись: xintrea/mytetra_db_adgaver_new/master/base/15219223595dsdp818wd/text.html на raw.githubusercontent.com


Как установить фокус на элемент управления, когда форма загружается в Visual Basic .NET или Visual Basic 2005


Обзор


В данной статье описывается, как установить фокус на элемент управления при загрузке формы. В данной статье описывается, как с помощью свойства Form.ActiveControl , как использовать метод Control.Focus и как использовать метод Control.Select для установки фокуса на элемент управления.

Свойство Form.ActiveControl возвращает активный элемент управления или задает активный элемент управления в форме. При
Свойство ActiveControl формы устанавливается на элемент управления в форме, фокус перемещается на элемент управления.

Метод Control.Select активизирует заданный элемент управления и устанавливает фокус на элемент управления.

Метод Control.Focus устанавливает фокус ввода на элементе управления. Элемент управления может получать фокус ввода, используя метод Control.Focus , если выполняются следующие условия:
  • ControlStyles.Selectable бит стиля элемента управления имеет значение
    Значение true.
  • Элемент управления, который будет получать фокус находится в другом элементе управления и все родительские элементы управления видимы и включены.
Примечание. Чтобы установить фокус на элемент управления в событии Load формы, когда свойство Visible формы имеет значение True, можно использовать метод Control.Focus .

к началу статьи

Требования

Предполагается, что вы знакомы со следующими разделами:
  • Синтаксис Visual Basic корпорации Майкрософт
  • Среда Microsoft Visual Studio .NET и Microsoft Visual Studio 2005
  • Элементы управления Microsoft Visual Basic
к началу статьи

Свойство Form.ActiveControl

Следующий пример описывает, как использовать свойство ActiveControl Form2 для установки фокуса на элемент управления TextBox без текста:
  1. Запустите Visual Studio 2005 или Visual Studio .NET.
  2. В меню файл укажите на пункт
    Создатьи выберите команду проект.
  3. В области Типы проектоввыберите
    Проекты Visual Basic.

    Примечание. В Visual Studio 2005 выберите в списке Типы проектов Visual Basic .
  4. В области Шаблонывыберите пункт
    Приложение Windows, а затем нажмите кнопку ОК.

    По умолчанию будет создана форма Form1.
  5. Добавить
    Элемент управления Button в форму Form1.
  6. Щелкните правой кнопкой мыши кнопки Button1и нажмите кнопку
    Свойства.
  7. В диалоговом окне Свойства установите
    Свойство Text , чтобы Установить фокус.
  8. В меню проект выберите Добавить форму Windowsи нажмите кнопку Открыть.

    По умолчанию создается Form2.
  9. Добавьте три
    Элементы управления TextBox Form2.
  10. Добавьте три элемента управления Label на Form2.

    Примечание. Поместите каждый элемент управления Label слева от элемента управления TextBox .
  11. В диалоговом окне Свойства установите
    Свойство Text метки Label1
    Имя, значение свойства Text Label2 компании, а затем установите свойство Text Label3 на ContactNo.
  12. В диалоговом окне Свойства удалите текст в свойстве Text TextBox1, удалите текст в свойстве Text TextBox2и удалите текст в свойстве Text TextBox3.
  13. Добавьте следующий код для
    Создание обработчика событий Button1_Click в Form1:

    'Create an instance of Form2.Dim MyForm As New Form2()
    'Set the Text in the TextBoxes on Form2.
    MyForm.TextBox1.Text = "John"
    MyForm.TextBox3.Text = "123456"
    'Display the form.
    MyForm.Show()


  14. Добавьте следующий код в обработчик событий Form2_Load:

    Dim i As IntegerFor i = 0 To 5
    If Me.Controls(i).Name Is "TextBox1" Or Me.Controls(i).Name Is "TextBox2" Or Me.Controls(i).Name Is "TextBox3" Then
    'Find the TextBox for which Text is not set.
    If Me.Controls(i).Text = "" Then
    'Set the focus on the control without any text.
    Me.ActiveControl = Me.Controls(i)
    End If
    End If
    Next


  15. В меню Построение выберите команду Построить решение.
  16. В меню Отладка выберите команду
    Для запуска.
  17. Нажмите кнопку Установка фокуса.

    Фокус установлен на элементе управления TextBox без текста.
к началу статьи

Метод Control.Select

В следующем примере описывается, как найти элемент управления TextBox без текста на Form2 и описывается использование метода Control.Select для установки фокуса для элемента управления:
  1. Замените следующий оператор в обработчике событий Form2_Load

    Me.ActiveControl = Me.Controls(i)


    с помощью следующей инструкции:

    Me.Controls(i).Select()


  2. В меню Построение выберите команду Построить решение.
  3. В меню Отладка выберите команду
    Для запуска.
  4. Нажмите кнопку Установка фокуса.

    Фокус установлен на элементе управления TextBox без текста.
к началу статьи

Метод Control.Focus

Приведенный ниже описывается, как найти элемент управления TextBox без текста на Form2, описывается значение Trueсвойства Visible Form2 и затем описывается, как установить фокус на элемент управления с помощью метода фокус элемента управления:
  1. Замените существующий код в обработчике событий Form2_Loadследующий код:

    'Set the visible property of the form to true, 'and then set the focus to the control.
    Me.Visible = True
    Dim i As Integer
    For i = 0 To 5
    If Me.Controls(i).Name Is "TextBox1" Or Me.Controls(i).Name Is "TextBox2" Or Me.Controls(i).Name Is "TextBox3" Then
    'Find the TextBox for which Text is not set.
    If Me.Controls(i).Text = "" Then
    'Set the focus on the control with no text.
    Me.Controls(i).Focus()
    End If
    End If
    Next


  2. В меню Построение выберите команду Построить решение.
  3. В меню Отладка выберите команду
    Для запуска.
  4. Нажмите кнопку Установка фокуса.

    Фокус установлен на элементе управления TextBox без текста.
к началу статьи

Разрешение вопросов

  • Удалите любой текст в элементах управления TextBox на Form2 перед запуском приложения.
  • Чтобы установить фокус на элемент управления формы свойства Visible присвоено значение True,можно использовать метод Control.Focus в событии Load формы.
к началу статьи

Ссылки


Для получения дополнительных сведений посетите следующие веб-сайты Microsoft Developer Network (MSDN):

Так же в этом разделе:
 
MyTetra Share v.0.59
Яндекс индекс цитирования