Пълнене на ComboBox (компонент)

Тази статия предоставя подобрена ComboBox. която изпълва полето за текст, в зависимост от приноса на потребителите (при запълване), с възможните опции.

В статията се показва как да се разширят съществуващите компоненти. Не е задължително винаги да се създаде нов компонент, можете просто да подобрите съществуващ. Можете просто да се създаде нов клас и да се измъкнем от него всичко, което искате да се подобри.

В нашия случай, ние ще разширим TComboBox компонент директно. Можем да изберем TCustomComboBox. но той е публикувала редица имоти в различни версии на Delphi.

Delphi прави тази задача проста, като предлага малко господар. От менюто File -> New. изберете компонент в първия раздел от Новия.

Вие ще видите един прост магьосник. Напълнете съответно:

  • Предците Тип: TComboBox
  • Клас Име: TFillComboBox
  • Палитра Page: Пробите (или всяко друго, като "стандарт")
  • Наименование звено на файла: Изберете папката и файла, за да запазите работата си

Щракнете върху OK. Ние ще го инсталирате по-късно.

Съветникът създава основен компонент, включително определяне на подпрограма:

Тази програма ще се нарича Делфи, когато изберете инсталационния пакет, включително и този файл.

Първият параметър описва RegisterComponents палитра страница, в която компонент е монтиран, а вторият - на масива на компоненти да бъдат инсталирани.

Добавянето на нов имот

За нашия нов компонент, ние се добави нов AutomaticFillIn собственост. Когато е настроен на True. ще търсим елемент, съответстващ на входа на потребителя и добавете останалата част от текстовото поле.

Ето защо, ние трябва да декларират лично променлива, която ще съхранява тези значения преминат.

Поставянето променлива публикувано в раздела, ние се даде възможност на потребителя да променя стойността си в инспектора на обекта.

Обработка на потребителя да промени текста

За да разберете, когато потребителят промени текста в областта, ние трябва да замени стандартен манипулатор за публикации на ComboBox.

Първо, ние проверяваме дали е включена специална обработка. Ако е така, ние получаваме на настоящия текст, който потребителят влезе, а след това го търсим в списъка. Ако има съвпадение, замени съществуващия текст елемент и изберете частта, добавен към нашия функция.

Напиши код модул, и после запишете файла:

Инсталиране на компонент

Сега трябва да се инсталира компонент, който току що сте създали.

Компонента меню -> Инсталиране на компонент. изберете вашите FillComboBox.pas в името на отдел файл и щракнете върху OK.

Всичко! Сега можете да създадете нова молба и да се използва компонент.