Вы можете сделать интерфейс пользователя более понятным и легким в использования с помощью создания ключей доступа (access keys), установки порядка обхода элементов на форме (tab order), отображения текста подсказки через ToolTip и деактивацией выбранных элементов управления.

Создания ключей доступа (Access Keys)

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

Для указания ключа доступа для элемента управления

  • В свойстве Caption элемента управления, предварите желаемую букву обратным слешем (\), перед которым нужно указать левую угловую скобку (<).

Для получения более подробной информации смотрите Свойство Caption (Visual FoxPro).

Например, приведенная ниже установка для свойства Caption командной кнопки создает ключ доступа, использующий букву "O":

 CopyCode imageСкопировать код
Caption = "\<Open"

Пользователь может выбрать такую командную кнопку в любом месте формы нажатием комбинации клавиш ALT+O.

Для указания ключа доступа для элемента управления textbox или editbox

  1. Создайте метку (элемент управления label), содержащую (\) и левую угловую скобку (<), предваряющие желаемую букву, например, C\<ustomer.

  2. Убедитесь что, label в схеме обхода элементов формы представляет собой элемент управления, размещенный в схеме непосредственно перед желаемым textbox или editbox, на котором вы желаете установить фокус.

Установка порядка обхода элементов управления формы

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

Для изменения порядка обхода элементов управления на форме

  1. Откройте форму Form Designer (Конструктор форм).

  2. В меню View (Обзор) перейдите к Tab Order (Порядок обхода) и щелкните на Assign Interactively (Присвоить интерактивно).

    NoteСовет

    Вы можете, кроме того, щелкнуть по Set Tab Order - Установить порядок обхода в полоске инструментов Form Designer (Конструктор форм). Для установки порядка обхода с использованием списка введенных в форму элементов управления - щелкните по Assign by List - Присвоить по списку.

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

  4. Произведите щелчок на маленьком боксе с цифрой, появляющемся рядом с элементов управления, у элементов управления в том порядке, в котором они по вашему желанию должны получать фокус.

  5. Когда вы закончите - щелкните в любом месте, вне этих боксов с цифрами порядка обхода..

Вы можете, кроме того, установить метод по умолчанию для присвоения порядка обхода элементов формы по списку с помощью установки опции Tab на закладке Forms (Формы) в диалоговом окне Options (Опции) (Visual FoxPro).

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

Для изменения порядка выбора кнопок внутри группы элементов управления

  1. В Окне Properties - Свойства (Окно свойства)(Visual FoxPro), выберите группу в списке Object - Объект. Тонкая рамка указывает, что группа находится в режиме редактирования.

  2. Выберите окно Form Designer (Конструктор форм).

  3. В меню View (Обзор) выберите Tab Order (Порядок обхода).

  4. Установите порядок выбора таким, как вы желаете.

Установка текста ToolTip

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

Для указания текста ToolTip

Будут ли показаны тексты ToolTip или нет, определяет свойство формы ShowTips.

Изменение отображения указателя мыши

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

Для изменения вида указателя мыши

  • Создайте метод, который будет изменять указатель мыши для различных состояний приложения.

Например, в классе tsBaseForm образца приложения Tasmanian Traders, метод WaitMode изменяет указатель мыши с используемого по умолчанию в курсор ожидания. До запуска любого кода, который может быть вовлечен в процесс, приложение Tasmanian Traders посылает значение true (.T.) методу WaitMode для изменения указателя мыши, что позволяет пользователю быть осведомленным о том, что идет какой-то процесс. После завершения процесса вызывается WaitMode с параметром false (.F.), что восстанавливает указатель мыши.

 CopyCode imageСкопировать код
* WaitMode Method of tsBaseForm class
LPARAMETERS tlWaitMode

lnMousePointer = IIF(tlWaitMode, MOUSE_HOURGLASS, MOUSE_DEFAULT)
THISFORM.MousePointer = lnMousePointer
THISFORM.SetAll('MousePointer', lnMousePointer)
  • Если вы желаете изменить указатель мыши в что-либо отличающееся от используемого по умолчанию, установите свойство MousePointer в значение 99-Custom и установите свойство MouseIcon в ваш собственный файл курсора (.cur) или иконки (.ico). Для получения более подробной информации смотрите описание свойств MousePointer и MouseIcon.

Активация и запрещение элементов управления

Вы можете активизировать или запрещать элементы управления, если они не должны быть доступны при определенных условиях.

Для активации или запрещения элемента управления

  • Установите свойство Enabled в True (.T.) или в False (.F.) соответственно.

Для получения более подробной информации смотрите описание свойства Enabled (Visual FoxPro).

Вы можете активизировать или запретить индивидуальные радио-кнопки или командные кнопки в группах путем установки свойства Enabled для каждой кнопки в True (.T.) или False (.F.). Вы можете, кроме того, запретить или разрешить все кнопки в группе установкой свойства Enabled группы, так как это делает приведенная ниже строка кода:

 CopyCode imageСкопировать код
frmForm1.cmgCommandGroup1.Enabled = .T.

Когда вы устанавливаете свойство Enabled группы радио-кнопок командных кнопок в (.F.), все кнопки в группе запрещены для доступа, но не отображаются в цветах, определенных установками для запрещенных ForeColor BackColor. Установка свойства Enabled группы не изменяет свойства Enabled индивидуальных кнопок группы. Это предоставляет вам возможность запрещать доступ к группе кнопок, в которой часть кнопок запрещена. При разрешении доступа к группе, те кнопки, которые были запрещены к доступу, останутся запрещенными.

Если вы желаете запретить все кнопки в группе, к которой они появятся запрещенными, и вас не интересует их предыдущее состояние, вы можете использовать метод SetAll группы, примерно так:

 CopyCode imageСкопировать код
frmForm1.opgOptionGroup1.SetAll("Enabled", .F.)

Смотрите также