Bazaprogram.ru

Новости из мира ПК
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Combobox delphi свойства

ComboBox и ComboBoxEx — для работы с комбинированными списками в Делфи

Комбинированный список объединяет поле редактирования и список. Пользователь может выбирать значение из списка или вводить его непосредственно в поле. В Delphi для работы с комбинированным списком служат компоненты ComboBox и ComboВохЕх. Компонент ComboBox представляет собой обычный комбинированный список, а компонент ComboВохЕх— расширенный комбинированный список. Рассмотрим здесь компонент ComboBox.

Отметим также, что в Delphi имеется специализированный комбинированный список ColorBox, предназначенный для выбора цвета, который задается через свойство Selected типа TColor.

Список, инкапсулированный в компоненте ComboBox, может быть простым либо раскрывающимся. Раскрывающийся список в свернутом виде занимает на экране меньше места.

На скриншоте показан компонент ComboBox со свернутым (1) и развернутым (2) списками.

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

Свойство Style

Свойство Style типа TComboBoxstyle определяет внешний вид и поведение комбинированного списка. Свойство Style принимает следующие значения:

  • csDropDown (раскрывающийся список с полем редактирования)— по умолчанию: пользователь может выбирать элементы в списке (при этом выбранный элемент появляется в поле ввода) или вводить (редактировать) информацию непосредственно в поле ввода;
  • csSimple (поле редактирования с постоянно раскрытым списком); для того чтобы список был виден, необходимо увеличить высоту (свойство Height) компонента ComboBox;
  • csDropDownList (раскрывающийся список, допускающий выбор элементов в списке);
  • csOwnerDrawFixed (список с элементами фиксированной высоты, задаваемой свойством ItemHeight);
  • csOwnerDrawVariable (список с элементами, которые могут иметь разную высоту).

Если стиль списка имеет значение csOwnerDrawFixed или csOwnerDrawVariable, то за прорисовку элементов списка отвечает программист.

Свойство DropDownСount

Свойство DropDownСount типа Integer определяет количество строк, которые одновременно отображаются в раскрывающемся списке. Если значение свойства превышает число строк списка, определяемое значением подсвойства Count свойства Items, то у раскрывающегося списка автоматически появляется вертикальная полоса прокрутки, если размер списка меньше, чем задано в свойстве DropDownСount, то отображаемая область списка автоматически уменьшается. Свойство DropDownСount по умолчанию имеет значение 8.

Свойство DroppedDown

Свойство DroppedDown типа Boolean позволяет определить, раскрыт ли список. Если свойство имеет значение True, то список отображается в раскрытом виде, в противном случае список свернут. Свойство DroppedDown действует только, если свойство Style имеет значение, не равное csSimple.

Cобытие OnDropDown

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

Рассмотрим пример управления раскрытием и свертыванием списка:

Нажатие кнопки btnOpenList приводит к открытию, а кнопки btnCloseList — к свертыванию списка ComboBox2.

При работе с комбинированным списком генерируются следующие события типа TNotifyEvent:

  • OnDropDown (открытие списка);
  • OnCloseUp (закрытие списка);
  • OnSelect (выбор элемента);
  • OnChange (изменение текста в поле редактирования).

Combobox в Delphi

Страница библиотеки Standard

Класс TComboBox

Модуль stdctrls

Компонент ComboBox объединяет функции компонентов ListBox – списка, и Edit – окно редактирования. Компонент дает возможность пользователю сделать выбор необходимой строки или реализовать свою строку текста в качестве выбора. Список может показываться и в развернутом виде, и как выпадающий список.

Разница между ComboBox и от схожего по функциям компонента ListBox заключается в следующем:

  • ComboBox дает возможность пользователю редактировать список, а ListBox нет;
  • в ComboBox список может быть развернут или свернут, а в ListBox он всегда развернут;
  • ListBox может допускать множественный выбор, а в ComboBox пользователь всегда будет выбрать один элемент.

Тип Tstrings реализует главное свойство – Items. Оно заполняется в свойстве Инспектора Объектов во время редактирования, при нажатии на кнопку с многоточием. Свойства и методы класса Tstrings задают работу с этим свойством.

Читать еще:  Delphi bitblt пример

Основные свойства Style (стили изображения списка):

  • csDropDown – выпадающий список где строки и окно редактирования имеют одну и ту же высоту, позволяющий пользователям ввести или отредактировать текст;
  • csSimple – развернутый список где строки и окно редактирования имеют одну и ту же высоту, позволяющий пользователям ввести или отредактировать текст;
  • csDropDownList – выпадающий список, у строк одинаковая высота, не содержащий окно редактирования;
  • csOwnerDrawFixed – выпадающий список типа csDropDown с графической прорисовкой элементов одинаковой высоты, задаваемой свойством ItemHeight;
  • csOwnerDrawVariable — выпадающий список типа csDropDown с графической прорисовкой элементов, у которых может быть различная высота;

Поле Text задает выбор пользователя или текст, который он ввел. Свойство ItemIndex задает индекс элемента списка, который выбрал пользователь, это свойство станет равным -1, если в окне проводилось редактирование. По умолчанию ItemIndex = -1. Свойство MaxLength задает число символов вводимых в окно редактирования. Сортировкой списка по алфавиту занимается свойство Sorted.

Основные свойства:

  • Action (property Action: TBasicAction;) – задает действие, которое связанно с данным компонентом;
  • Align (Talign = (alNone, alTop, alBottom, alLeft, alRight, alClient); property Align: TAlign;) – задает выравнивание компонента в контейнере;
  • Anchors (type TAnchorKind = (akTop, akLeft, akRight, akBottom); type Tachors = set of TAncorKind; property Ancors: TAnchors;) – определяет привязан ли данный компонент к родительскому когда изменен размер последнего;
  • DropDownCount (property DropDownCount: Integer;) – задает максимальное количество элементов, отображаемое в раскрывающемся списке без появления полосы прокрутки. Действует при всех значениях Style, кроме csSimple;
  • ItemHeight (property ItemHeight: Integer;) – указывает высоту элементов, в пикселях, в выпадающем списке;
  • ItemIndex (property ItemIndex: Integer;) – указывает порядковый номер элемента, который выделен в списке;
  • Items (property Items: TStrings;) – массив строк списка – объект класса Tstrings. Свойства этого класса позволяют формирование и изменение списка;
  • SelLength (property SelLength: Integer;) – определяет какое количество символов выделено в окне редактирования;
  • SelStart (property SelStart: Integer;) – указывает позицию первого символа, который выделен в окне редактирования или, если выделения нет, то позицию курсора в нем;
  • SelText (property SelText: string;) – текст выделенный в окне редактирования;
  • Sorted (property Sorted: Boolean;) – указывает, будут ли строки автоматически быть отсортированы в алфавитном порядке.

Основные методы:

  • Clear (procedure Clear;) – процедура удаления элементов из списка;
  • SelectAll (procedure SelectAll;) – процедура выделения всего текста в окне редактирования;
  • SetFocus (procedure SetFocus;) – процедура передачи фокуса элементу и активация его.

. delphi combobox проверить на активность combobox delphi пример combobox delphi как открыть комбобокс в делфи delphi ссылка на выбор combox

Combobox delphi свойства

Школа программирования Delphi

Портал DelphiSchool является бесплатным проектом, обеспечивающим пользователям быстрый и легкий доступ к урокам программирования на Delphi. Сайт позволяет научиться программировать на Делфи любому, кто хочеть писать свои программы, игры, Android приложения, программы для MAC OC или IOS. Кроме уроков Delphi и статей Delphi, на сайте доступны также и видеоуроки. Практически к каждому уроку, пользователю доступен исходник, изучив который, он сможет наглядно посмотреть как работает та или иная программа, написанная на Делфи. Кроме того мы постараемся прилагать к каждому материалу (статье, уроку, видеоуроку) файлы Delphi, которые будут помогать изучить предоставленный материал.

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

Читать еще:  Css button click

Как можно заметить этот код точная копия того, что мы использовали для ListBox, только изменено имя компонента и обработчик события. Приводить другие примеры думаю не стоит. Просто можно взять код из статьи Delphi и TListBox. Пример работы со списками выбора в Делфи.

Существует несколько типов ComboBox. За тип ниспадающего списка отвечает свойство Style.
Основные свойства Style (стили изображения списка ComboBox):

csDropDown – при этом стиле можно не только выбирать значение из списка, но и вводить свои значения в поле ввода;
csSimple – компонент примет вид как Edit, то есть будет только строка ввода, без ниспадающего списка;
csDropDownList – при таком стиле будет только выпадающий список без возможности редактирования и введения своих значений;
csOwnerDrawFixed – с помощью графических средств можно рисовать элементы самостоятельно. Высота этих элементов будет фиксированная;
csOwnerDrawVariable — с помощью графических средств можно рисовать элементы самостоятельно. Но в отличие от предыдущего стиля, высота не будет фиксированной;

К уроку (статье) Delphi и ComboBox. Пример работы с ниспадающими списками в Делфи прилагается исходник, посмотрев который, вы можете ознакомиться с полным исходным кодом программы и посмотреть как работает созданная программа. Исходный код сопровождается комментариями, благодаря чему вы сможете легко в нем разобраться. Но я настоятельно рекомендую делать все самостоятельно. Так вы лучше и быстрее усвоите то, о чем говорилось в этом уроке

Для того чтобы получить возможность скачать исходник Delphi к этому уроку, необходимо посетить сайт рекламодателя. После этого, появится ссылка на исходник Delphi к уроку Delphi и ComboBox. Пример работы с ниспадающими списками в Делфи
Нажмите на эту ссылку Ссылка

Combobox delphi свойства

Пример компонентов, рассмотренных в данном разделе и обеспечивающих выбор из списка, приведен на рис. 3.10.

Рис. 3.10
Пример компонентов выбора из списков

Компоненты ListBox и ComboBox отображают списки строк. Они отличаются друг от друга прежде всего тем, что ListBox только отображает данные и позволяет пользователю выбрать из них то, что ему надо, a ComboBox позволяет также редактировать данные. Кроме того различается форма отображения списков. ListBox отображает список в раскрытом виде и автоматически добавляет в список полосы прокрутки, если все строки не помещаются в окне компонента. ComboBox позволяет отображать список как в развернутом виде, так и в виде выпадающего списка, что обычно удобнее, так как экономит площадь окна приложения.

Основное свойство обоих компонентов, содержащее список строк, — Items, имеющее рассмотренный ранее тип TStrings. Заполнить его во время проектирования можно, нажав кнопку с многоточием около этого свойства в окне Инспектора Объектов. Во время выполнения работать с этим свойством можно, пользуясь свойствами и методами класса TStrings (см. раздел 3.3.4) — Clear, Add и другими.

В компоненте ListBox имеется свойство MultiSelect, разрешающее пользователю множественный выбор в списке (на рис. 3.10 это свойство установлено в true в среднем верхнем списке). Если MultiSelect = false (значение по умолчанию), то пользователь может выбрать только один элемент списка. В этом случае можно узнать индекс выбранной строки из свойства ItemIndex, доступного только во время выполнения. Если ни одна строка не выбрана, то ItemIndex = -1. Начальное значение ItemIndex невозможно задать во время проектирования. По умолчанию ItemIndex = -1. Это означает, что ни один элемент списка не выбран. Если вы хотите задать этому свойству какое-то другое значение, т.е. установить выбор по умолчанию, который будет показан в момент начала работы приложения, то сделать это можно, например, в обработчике события OnCreate формы, введя в него оператор вида

Если допускается множественный выбор (MultiSelect = true), то значение ItemIndex соответствует тому элементу списка, который находится в фокусе. При множественном выборе проверить, выбран ли данный элемент, можно проверив свойство Selected[Index: Integer] типа Boolean.

На способ множественного выбора при MultiSelect = true влияет еще свойство ExtendedSelect. Если ExtendedSelect = true, то пользователь может выделить интервал элементов, выделив один из них, затем нажав клавишу Shift и переведя курсор к другому элементу. Выделить не прилегающие друг к другу элементы пользователь может, если будет удерживать во время выбора нажатой клавишу Ctrl . Если же ExtendedSelect = false, то клавиши Shift и Ctrl при выборе не работают.

Свойство Columns определяет число столбцов, в которых будет отображаться список, если он не помещается целиком в окне компонента ListBox (в среднем верхнем списке на рис. 3.10 свойство Columns равно 2).

Свойство Sorted позволяет упорядочить список по алфавиту. При Sorted = true новые строки в список добавляются не в конец, а по алфавиту.

Свойство Style, установленное в lbStandard (значение по умолчанию) соответствует списку строк. Другие значения Style позволяют отображать в списке не только текст, но и изображения.

Имеется еще один компонент, очень похожий на ListBox — это список с индикаторами CheckListBox. Выглядит он так же, как ListBox (средний нижний список на рис. 3.10), но около каждой строки имеется индикатор, который пользователь может переключать. Индикаторы можно переключать и программно, если список используется для вывода данных и необходимо в нем отметить какую-то характеристику каждого объекта, например, наличие товара данного наименования на складе.

Все свойства, характеризующие компонент CheckListBox как список, аналогичны ListBox, за исключением свойств, определяющих множественный выбор. Эти свойства компоненту CheckListBox не нужны, поскольку в нем множественный выбор можно осуществлять установкой индикаторов. Свойства компонента CheckListBox, связанные с индикаторами, будут рассмотрены в разделе 5.5.

Рассмотрим теперь компонент ComboBox. Стиль изображения этого компонента определяется свойством Style, которое может принимать следующие основные значения:

csDropDown

Выпадающий список со строками одинаковой высоты и с окном редактирования, позволяющим пользователю вводить или редактировать текст (правый список на рис. 3.10).

csSimple

Развернутый список со строками одинаковой высоты и с окном редактирования, позволяющим пользователю вводить или редактировать текст (левый нижний список на рис. 3.10).

csDropDownList

Выпадающий список со строками одинаковой высоты, не содержащий окна редактирования.

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

Если в окне проводилось редактирование данных, то ItemIndex = -1. По этому признаку можно определить, что редактирование проводилось.

Свойство MaxLength определяет максимальное число символов, которые пользователь может ввести в окно редактирования.

Если MaxLength = 0, то число вводимых символов не ограничено.

Как и в компоненте ListBox, свойство Sorted позволяет упорядочить список по алфавиту. При Sorted = true новые строки в список добавляются не в конец, а по алфавиту.

Ссылка на основную публикацию
Adblock
detector