Работа с фокусом

При запуске приложения, как правило, один из имеющихся на форме объектов должен быть активным, т.е. обрабатывать определенным образом информацию, получаемую от мыши или клавиатуры. В этом случае говорят, что объект имеет фокус. Например, если на форме находится две управляющие кнопки и одна из них имеет фокус, то нажатие клавиши Enter (или Пробел) приводит к вызову для нее процедуры обработки события Click. Если управляющая кнопка имеет фокус, то она отображается с выделенной рамкой на форме.

В том случае, когда объект получает фокус, для него выполняется событие GotFocus, при потере фокуса объектом происходит событие LostFocus.

Получение фокуса объектом может быть реализовано несколькими способами:

При щелчке на нем мышью.

Используя клавиши перехода, а именно: Tab или стрелки управления курсором.

Применяя клавишу доступа.

Выполняя для заданного объекта метод SetFocus.

Объект не может получить фокус, если у него свойства Visible=False или

Enabled = False.

Существуют элементы управления, которые не могут получить фокус: Label,Frame,Image,Line,Shape, а также элементы управления, которые не видны на форме: Timer,Common Dialog.

Для определения порядка перехода, в соответствии с которым объекты будут получать фокус при последовательном нажатии клавиши Tab, используется свойство TabIndex(порядковый номер для перехода) и TabStop(отсутствие в последовательности). Объекту, который на форме был создан первым, автоматически присваивается значение свойства TabIndex=0, каждый последующий получает номер в последовательности на единицу больше. Порядок можно поменять, изменив значение свойства TabIndex.

Если создаваемый на форме элемент может получить фокус, то его свойству TabStop по умолчанию устанавливается значение True. Когда объект необходимо исключить из последовательности перехода – TabStop=False.

Работа с буфером обмена в VB

Доступ к буферу обмена можно получить через объект Clipboard, для которого определены следующие методы:

  • SetText записывает копию выделенного текста в буфер обмена;
  • GetText () возвращает копию текстового содержимого буфера обмена;
  • SetData записывает копию выделенного рисунка в буфер обмена;
  • Get Data () возвращает содержимое (рисунок) буфера обмена;
  • GetFormat () определяет, является ли содержимое буфера обмена текстом или рисунком;
  • Clear очищает содержимое буфера обмена.