Основы офисного программирования и документы Word

         

Метки и флажки


У объекта Balloon есть две коллекции - Labels с элементами Label и CheckBoxes с элементами CheckBox. В каждой из коллекций может содержаться не более пяти элементов. Элементами Labels являются метки, для которых, как правило, задается свойство Text, определяющее метку. Метки имеют тип, задающий их оформление. Все метки должны быть одного типа, так что настала пора рассказать еще об одном свойстве объекта Balloon. Тип меток задается свойством BalloonType объекта Balloon и имеет три возможных значения:

  • msoBalloonTypeNumbers - нумерованный список меток,
  • msoBalloonTypeBullets- список-бюллетень меток,
  • msoBalloonTypeButtons - список кнопок

Списки первых двух типов позволяют проинформировать пользователя о тех или иных предоставляемых возможностях. Конечно, для этой цели можно также использовать свойство Text самого объекта Balloon, но метки удобнее, поскольку информация предоставляется в структурированном виде.

Третий тип меток используется для получения информации от пользователя, который выбирает одну из нескольких (до пяти) возможностей, щелчком соответствующей кнопки. Метод Show, возвращающий номер нажатой кнопки, позволяет узнать, какая кнопка была выбрана. Тем самым появляется возможность организовать дальнейшие действия в зависимости от сделанного выбора.

Вместе или вместо меток третьего типа можно использовать свойство Button, благодаря которому в баллончике также появляются кнопки, а метод Show и в этом случае возвращает номер нажатой кнопки. Кнопки со стандартными именами, задаваемые Button, часто бывают полезными, но, конечно, не всегда приемлемы. Благодаря свойству Text у кнопок - меток, можно задать "свои" кнопки со своими именами.

Совместное использование меток третьего типа и свойства Button стало теперь возможным - я приведу пример такого использования.

Флажки (кнопки выбора), задаваемые элементами CheckBox, используются для той же цели, что и кнопки - они позволяют определить выбор пользователя. Существенное отличие состоит в том, что пользователь может выбрать не одну из предоставляемых ему возможностей, а несколько, взводя соответствующие флажки. Когда флажок взведен, то свойство Checked соответствующего элемента из коллекции CheckBoxes получает значение True. Каждое из этих свойств можно затем проверить и использовать при выборе последующих действий в программе.

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


Листинг 7.4.

(html, txt)

А теперь взгляните на картинки, которые будут появляться в процессе выполнения этой процедуры.


Рис. 7.4.  Объект Balloon выясняет увлечения


Рис. 7.5.  Объект Balloon уведомляет об увлечениях

Флажки и метки могут применяться одновременно, хотя вряд ли в этом есть смысл. Если пользователь должен сделать единственный выбор - применяйте метки, в случае множественного выбора - используйте флажки. В следующем примере я слегка модифицировал задачу выбора увлечения для того, чтобы продемонстрировать возможности анализа результата выбора, используя значение, возвращаемое методом Show:

Листинг 7.5.

(html, txt)

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


увеличить изображение
Рис. 7.6.  Организация выбора одной из многих возможностей

Содержание раздела