2.1 Списки ListBox, ComboBox
В Delphi часто приходится иметь дело с различными списками, например, списками строк текстового редактора Memo. Стандартный компонент Listbox (вкладка Standard палитры компонентов) предназначен непосредственно для отображения списка строк на экране.
Основные свойства компонента ListBox:
— ItemIndex: integer; определяет индекс выделенного элемента в списке. Нумерация элементов начинается с нуля. Если выделенного элемента нет, это свойство принимает значение, равное -1. Свойство доступно только на этапе выполнения программы;
— Item: Tstrings; задает элементы списка;
— MultiSelect:Boolean; определяет, разрешается ли одновременно выделять несколько элементов списка: если имеет значение True, то такое выделение возможно, в противном случае выделить можно только один элемент;
— Selected[Index:integer]:Boolean; если i-тый элемент выделен, то Selected[i] равняется True, , в противном случае — False. Свойство доступно только на этапе выполнения программы.
— Sorted:Boolean; указывает, должны ли строки в списке автоматически сортироваться в алфавитном порядке.
— Clear; удаляет все элементы списка.
СomboBox –комбинированная строка ввода. Страница Палитры Компонентов – Standard.
Комбинированная строка ввода СomboBox объединяет в себе возможности строки ввода Edit и списка List Box. По внешнему виду напоминает Edit, но дополнительно имеет в правой части кнопку со стрелкой, направленной вниз.
Если щелкнуть по этой кнопке, появится выпадающий список. Основное отличие от ListBox – возможность вводить в список новые элементы, отображать активный элемент.
В компоненте СomboBox отсутствует свойство MultiSelect, поэтому не допускается множественный выбор.
Основные свойства Сombo Box:
— ItemIndex: integer; определяет индекс выделенного элемента в списке. Нумерация элементов начинается с нуля. Если выделенного элемента нет, это свойство принимает значение, равное -1. Свойство доступно только на этапе выполнения программы;
— Item: Tstrings; задает элементы списка;
— DropDownCount: integer; отображает максимальное число элементов, отображаемое в раскрывающемся списке.
— DroppedDown:Boolean; указывает, отображается ли раскрывающийся список в данный момент. Свойство доступно только на этапе выполнения программы.
— Sorted:Boolean; указывает, должны ли строки в списке автоматически сортироваться в алфавитном порядке.
— Text: String; содержит текс выбранной или введенной пользователем строки.
— Clear; удаляет все элементы списка.
2.2 Задание к лабораторной работе
2.2.1 Создать программу, которая при выборе из списка с помощью мыши названия цвета и нажатии на кнопку на экране отображает название цвета на русском языке и код цвета в формате RGB. Программа заканчивает свою работу при нажатии кнопки «Close».
План разработки программы:
1) разместить на форме экземпляры компонентов в соответствии с рисунком 2.1;
2) сохранить новый проект – File – Save All. Создать новую папку, дать название «Справочник», открыть папку;
3) Сохранить код программы и проект под именами, например, Unit1.pas и Project1.dpr.
Delphi combobox как заполнить
Школа программирования Delphi
Портал DelphiSchool является бесплатным проектом, обеспечивающим пользователям быстрый и легкий доступ к урокам программирования на Delphi. Сайт позволяет научиться программировать на Делфи любому, кто хочеть писать свои программы, игры, Android приложения, программы для MAC OC или IOS. Кроме уроков Delphi и статей Delphi, на сайте доступны также и видеоуроки. Практически к каждому уроку, пользователю доступен исходник, изучив который, он сможет наглядно посмотреть как работает та или иная программа, написанная на Делфи. Кроме того мы постараемся прилагать к каждому материалу (статье, уроку, видеоуроку) файлы Delphi, которые будут помогать изучить предоставленный материал.
Каждый кто решил написать свою программу, создать свое приложение, научиться программировать и т.д., найдет на DelphiSchool статьи Delphi, уроки Delphi, видеоуроки Delphi, исходники Delphi, файлы Delphi, изучит компоненты Delphi, посмотрит Delphi примеры и многое другое абсолютно бесплатно. Все о Delphi программировании теперь собрано на одном сайте.
DelphiSchool
Как можно заметить этот код точная копия того, что мы использовали для ListBox, только изменено имя компонента и обработчик события. Приводить другие примеры думаю не стоит. Просто можно взять код из статьи Delphi и TListBox. Пример работы со списками выбора в Делфи.
Рисунок. Пример работы с ComboBox в Delphi
Существует несколько типов ComboBox. За тип ниспадающего списка отвечает свойство Style.
Основные свойства Style (стили изображения списка ComboBox):
csDropDown – при этом стиле можно не только выбирать значение из списка, но и вводить свои значения в поле ввода;
csSimple – компонент примет вид как Edit, то есть будет только строка ввода, без ниспадающего списка;
csDropDownList – при таком стиле будет только выпадающий список без возможности редактирования и введения своих значений;
csOwnerDrawFixed – с помощью графических средств можно рисовать элементы самостоятельно. Высота этих элементов будет фиксированная;
csOwnerDrawVariable — с помощью графических средств можно рисовать элементы самостоятельно. Но в отличие от предыдущего стиля, высота не будет фиксированной;
К уроку (статье) Delphi и ComboBox. Пример работы с ниспадающими списками в Делфи прилагается исходник, посмотрев который, вы можете ознакомиться с полным исходным кодом программы и посмотреть как работает созданная программа. Исходный код сопровождается комментариями, благодаря чему вы сможете легко в нем разобраться. Но я настоятельно рекомендую делать все самостоятельно. Так вы лучше и быстрее усвоите то, о чем говорилось в этом уроке
Для того чтобы получить возможность скачать исходник Delphi к этому уроку, необходимо посетить сайт рекламодателя. После этого, появится ссылка на исходник Delphi к уроку Delphi и ComboBox. Пример работы с ниспадающими списками в Делфи
Нажмите на эту ссылку Ссылка
Mobile Tutorial: Using Combo Box Components to Pick Items from a List (iOS and Android)
For mobile platforms, FireMonkey wraps the Picker component with the TComboBox component:
To define a picker and the associated list items:
- Select either of the following:
- File > New > Multi-Device Application — Delphi > Blank Application
- File > New > Multi-Device Application — C++Builder > Blank Application
- Select the TComboBox component in the Tool Palette, and drop it on the Form Designer.
To find TComboBox, enter the first few characters («Com») in the Search box of the Tool Palette:
Building a List of Items Using Code
To build a list of items using code, you should implement the onFormCreate event handler in the following way:
Displaying a Specific Item
The currently selected item is specified by the ItemIndex property. ItemIndex is an integer value that is specified using a zero-based index (that is, the first item is zero).
To display the list with the fifth item selected («California»), specify ItemIndex for ComboBox1 as follows:
If you do not know the index value, you can find the value by using the IndexOf method. To display the ComboBox2 with the item whose text is ‘Penguin’ selected, add the following line to the previous code:
Implementing an Event Handler for the User’s Selection
After the user selects an item, the OnChange event is fired. To respond to the user’s action, you can implement an event handler for the OnChange event.
- Select the TMemo component in the Tool Palette, and drop it on the Form Designer.
- In the Object Inspector, set the TMemo.Align property to Client .
To implement an OnChange event handler:
- Select the ComboBox1 component.
- In the Object Inspector, open the Events page, and double-click the empty space next to OnChange.
- The Code Editor opens. Write code as follows:
This event handler displays a message dialog that indicates the item that was selected.
In the Delphi code, the Format function returns a formatted string assembled from a format string and an array of arguments:
Delphi combobox как заполнить
На этом шаге мы рассмотрим компонент TComboBox
Компонент TComboBox ( Комбинированный список ) представляет собой вариант списка с присоединенным дополнительным полем, в котором отображается выбранный элемент списка. Это же поле может использоваться для ввода новых элементов или для быстрого поиска элемента по начальным символам. Если на экране отображается только поле без списка, то для раскрытия списка можно использовать комбинацию клавиш Alt+вниз , а для выбора элемента списка используются клавиши перемещения (клавиши со стрелками).
Компонент TComboBox работает в пяти разных режимах , определяемых значением свойства Style .
Перечислим возможные значения свойства Style компонента TComboBox .
Вводимый текст может автоматически преобразовываться к верхнему регистру (если свойство CharCase имеет значение ecUpperCase ), к нижнему ( ecLowerCase ) или никак не преобразовываться ( ecNormal по умолчанию).
Максимальное число элементов, одновременно отображаемых в видимой части списка, задается в свойстве DropDownCount . Чтобы открыть список из программы, свойству DroppedDown ( Раскрыть ) надо присвоить значение True .
Понятия выделенная строка в раскрывающемся списке нет. В нем имеется только текущая выбранная строка (ее номер в списке хранится в свойстве ItemIndex ). Соответственно нельзя и выделять строки списка. Единственный метод, связанный с выделением данных, — это процедура SelectAll , которая выделяет весь текст, введенный пользователем в присоединенное поле. При работе с раскрывающимся списком наиболее важными являются перечисленные ниже события.
Перечислим основные события компонента TComboBox .
Пример программы с использованием поля со списком приведен ниже, а результат ее выполнения показан на рис. 1, где выбранный элемент отображается на надписи.
Поместите на форму компоненты: Label1 , ComboBox1 . Для Form1 создайте обработчик OnCreate :