Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
76
Добавлен:
02.04.2015
Размер:
8.79 Mб
Скачать
          1. По родительскому контейнеру

Чтобы выровнять виджеты по их родительскому контейнеру:

  1. Выберите один или несколько виджетов в любом порядке.

  2. Вызовите диалог "Align Widgets", выберите желаемые опции выравнивания, затем щёлкните на соответствующей кнопке "Align to Container".

 Если Вы выбрали и вертикальную, и горизонтальную опции, убедитесь, что щёлкнули на обе кнопки "Align to Container".

  1. Щёлкните на кнопке "Align".

При выравнивании виджетов по контейнеру Вам может понадобиться сохранить их относительные позиции. Чтобы сделать это:

  1. Сгруппируйте виджеты вместе (см. раздел "Выравнивание виджетов, используя группы") в главе "Управление геометрией".

  2. Выровняйте виджеты.

  3. Разбейте, что необязательно, группу на составляющие.

    1. Общепользовательский доступ (сиа) и управление фокусом

Общепользовательский доступ (СИА) является стандартом, описывающим, как пользователь может изменить фокус с помощью клавиатуры. Виджет является фокусируемым, если на него может устанавливаться фокус путём нажатия клавиши СИА или вызовом функции фокусировки.

          1. Изменение фокусировки через клавиатуру

Следующие клавиши перемещают фокус только к фокусируемым виджетам:

чтобы перейти к:

нажмите

следующему виджету

Tab

предыдущему виджету

Shift+Tab

первому виджету в следующем контейнере

Ctrl+Tab

последнему виджету в предыдущем контейнере

Ctrl+Shift+Tab

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

          1. Управление фокусом

Для управления фокусом для виджета используйте следующие флаги:

Pt_ARG_FLAGS:

Pt_GETS_FOCUS

Сделать виджет фокусируемым

Pt_FOCUS_RENDER

Сделать виджет подающим визуальную информацию, когда он имеет фокус.

Дополнительно, используйте для управления фокуса для контейнера следующие флаги Pt_ARG_CONTAINER_FLAGS:

Pt_BLOCK_CUA_FOCUS

Предотвращает использование клавиши СUA для входа в контейнер. Однако, если пользователь щёлкнет внутри контейнера, или функция фокусирования даст контейнеру фокус, клавиши CUA могут использоваться.

Pt_ENABLE_CUA

Даёт родительскому виджету возможность задавать, обрабатывает или не обрабатывает порождённый контейнер клавиши CUA:

  • если этот флаг установлен, код виджета обрабатывает клавиши СUA

  • если он не установлен, клавиши СUA пропускают семейство виджета, пока не будет найден прародитель с установленным флагом. Этот прародитель (если он найден) обрабатывает клавиши.

Pt_ENABLE_CUA_ARROWS

Аналогичен флагу Pt_ENABLE_CUA, но используется только клавишами стрелок.

          1. Ответные реакции фокусировки

Все потомки виджета PtBasic имеют следующие ресурсы ответных реакций:

  • Pt_CB_GOT_FOCUS – вызывается, когда виджет получает фокус

  • Pt_CB_LOST_FOCUS – вызывается, когда виджет теряет фокус.

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

 PtMultiText и PtText имеют специальные версии этих ответных реакций.

Для получения более полной информации см. "Справочник виджетов".

Соседние файлы в папке Литература_1