![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Элемент управления ListBox
В данной главе будут анализироваться VBA-программы, создаваемые в приложении Word без вывода результата в документ Word, поэтому программы применимы во всех приложениях пакета MS Office. Рассматриваемые примеры используют весь теоретический материал, рассмотренный в главах 1–3, а также добавляют новые возможности программирования. Во многих создаваемых приложениях используют возможности массивов. Для доступа к элементам массивов часто применяют элемент управления ListBox. Элемент управления ListBox (список) создается с помощью кнопки Список (ListBox). Данный элемент нужен для хранения списка значений. Из списка пользователь может выбрать одно или несколько значений, которые в последующем могут использоваться в тексте программы. Наиболее часто используемые свойства элемента управления ListBox: ListIndex – возвращает номер текущего элемента списка, нумерация элементов списка начинается с нуля; Listcount – возвращает число элементов списка; TopIndex – возвращает элемент списка с наибольшим номером; columnCount – устанавливает число столбцов в списке; textcolumN– устанавливает столбец в списке, элемент которого возвращается свойством text; text – возвращает выбранный в списке элемент; List (row, column) – возвращает элемент списка, стоящий на пересечении указанных строки и столбца; RowSourse – устанавливает диапазон, содержащий элементы списка; ControlCourse – устанавливает диапазон (ячейку), куда возвращается выбранный элемент из списка; multiSelect – устанавливает способ выбора элементов списка. Допустимые значения: • fmMultiSelectSingle – выбор только одного элемента; • fmMultiSelectMulti – разрешен выбор нескольких элементов посредством либо щелчка, либо нажатием клавиши Пробел; • fmMultiSelectExtended – разрешено использование клавиши shift при выборе ряда последовательных элементов списка; selected – допустимые значения: True (если элемент списка выбран) и False (в противном случае), используется для определения выделенного текста, когда свойство multiSelect имеет значение fmMultiSelectMulti или fmMultiSelectExtended; columnWidths – устанавливает ширину столбцов списка. Синтаксис: columnWidths = string, где String – строка, устанавливающая ширину столбцов.
В примере устанавливается ширина каждого из трех столбцов списка: With ListBox1 ColumnCount=3 ColumnWidths = “20; 30; 30” end With columnHeads – допустимые значения: True (выводятся заголовки столбцов раскрывающего списка) и False (в противном случае); listStyle – допустимые значения: • fmListStylePlaiN– выбранный элемент из списка выделяется цветом; • fmListStyleOptioN– перед каждым элементом в списке располагается флажок, и выбор элемента из списка соответствует установке этого флажка; boundColumN– устанавливает тип, возвращаемый свойством Value. А именно: • если свойство boundColumNравно 0, то свойство value возвращает индекс выбранной строки; • если свойство boundColumNпринимает значение из диапазона от 1 до количества столбцов в списке, то свойство value возвращает элемент из выбранной строки, стоящей в столбце, определенном свойством boundcolumn. Наиболее часто используемые методы элемента управления ListBox: clear – удаляет все элементы из списка; RemoveItem (index) – удаляет из списка элемент с указанным номером, где index – номер элемента; AddItem ([item[, varIndex]]) – добавляет элемент в список, где item – элемент (строковое выражение), добавляемый в список, и varIndex – номер добавляемого элемента. Заполнить список можно одним из следующих способов.
Поэлементно, если список состоит из одной колонки With ListBox1 AddItem «июнь» AddItem «июль» AddItem «август» ListIndex=0 End With Массивом, если список состоит из одной колонки With ListBox1 List=Array(«июнь», " июль", " август") ListIndex = 1 End With Из диапазона A1: B4, в который предварительно введены элементы списка. Результат выбора (индекс выбранной строки) выводится в ячейку С1 With ListBox1 ColumnCount = 2 RowSourse = «A1: B4» ControlSourse = «C1» BoundColumn=0 End With Поэлементно, если список состоит из нескольких колонок, например двух With ListBox1 ColumnCount = 2 AddItem «июнь» List(0, 1)=" сессия" AddItem «июль» List(1, 1)=" каникулы" AddItem «август» List(2, 1)=" отработка" End With Массивом, если список состоит из нескольких колонок, например двух Dim A(2, 1) As string A(0, 0) = «июнь» A(0, 1) = «сессия» A(1, 0) = «июль» A(1, 1) = «каникулы» A(2, 0) = «август» A(2, 1) = «отработка» With ListBox1 ColumnCount = 2 List = A End With
|