Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория Win32 и Dialog.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
729.97 Кб
Скачать

Компонент ComboBoxEx

Компонент delphi ComboBoxEx (рисунок 30)  во многом подобен компоненту ComboBox. Различие, заключается в том, что в компонент ComboBoxEx легче, чем в ComboBox, вводить изображения в элементы списка, а также есть возможность регулировать отступ каждого элемента от левого края списка. С другой стороны есть возможности в ComboBox, например возможность сортировки, которые в ComboBoxEx не поддерживаются.

Рисунок 30 – Пример использования компонента ComboBoxEx

Изображения, отображаемые в ComboBoxEx, должны содержаться в компоненте ImageList. Ссылка на который задается в свойстве Images.

Большая часть свойств, событий и  методов компонента ComboBoxEx  совпадают с компонентом ComboBox. Специфические свойства описаны ниже в таблице.

Таблица 14 – Специфические свойства компонента ComboBoxEx 

Images

Содержит ссылку на изображение

ItemsEx

Содержит ссылку на список (класс TComboExItems)

Таблица 15 - Свойства класса TComboExItems

CaseSensitive

Определяет учитыватся регистр букв при сортировке строк или нет

SortType

Определяет, как сортируются элементы:•          stNone — нет сортировки;

•          stText — по значению свойства Caption;

•          tData — по значению свойства Data;

•          stBoth — объединенная сортировка (по значениям обоих свойств).

 

Таблица 16 - Методы и события класса TComboExItems, управляющие списком

Метод

Описание

Add

Добавляет в список новый элемент

AddItem(const Caption: String; const ImageIndex, SelectedImageIndex, OverlayImageIndex, Indent: Integer; Data: Pointer)

Добавляет в список новый элемент и инициализирует его свойства

Insert(Index: Integer)

Вставляет новый элемент в указанную позицию списка

CustomSort(Compare: TListItemsCompare)

Сортирует элементы с помощью функции Compare

Sort

Сортирует элементы с помощью обработчика события OnCompare

 

Компонент delphi xpManifest

Компонент delphi XPManifest служит для того чтобы оформление вашей программы было такое же как и остальные программы, которые отображаются с использование текущей XP Theme т.е. темы Windows XP. Если у вас Windows ХР, то вы увидите, что стиль компонентов вашего приложения будет такие же как у окон ХР.

А если у Вас Windows 7, то разницы вы не увидите. Советуется всегда кидать этот компонент на ваше приложение, если предполагаете, что люди будут пользоваться вышей программой и в Windows ХР. Для того чтобы использовать этот компонент просто перенесите его на свое приложение и все больше ни каких дополнительных действий не требуется.

Рисунок 31 – Пример использования компонента XPManifest

 На рисунке показано до использования XPManifest и после.

Вкладка dialogs Компонент Delphi OpenDialog

Компонент Delphi OpenDialog располагается на странице Dialogs Палитры компонентов.

С помощью данного компонента мы можем выбрать файл для его открытия. Запуская данный диалог мы увидим окно (см. рисунок 32), в котором происходит выбор открываемого файла.

Рисунок 32 – Пример использования компонента OpenDialog

Основной метод, используемый для открытия файла, эта  функция:

function Execute: Boolean;

Она позволяет определить, как закрыт диалог, при помощи возвращаемого логического значения. Если была нажата кнопка Open, то диалог считается принятым, и возвращаемое значение функции Execute равно True. Иначе, закрывая диалог любым другим способом, функция возвращает значение False и диалог считается не принятым.

К основным свойствам данного компонента относятся:

  • Title (тип String) - устанавливает заголовок окна. По умолчанию свойство Title не установлено и на экране мы увидим заголовок - Open.

  • FileName (тип String) - является именем файла включая его полный путь. Наименование открываемого файла будет отображано в строке Имя файла.

  • InitialDir (тип String) - задает каталог, содержимое которого будет отображено в диалоговом окне. Если данное свойство не задано, то мы увидим содержимое текущего каталога.

  • Filter (тип String) - устанавливает маски имен файлов, которые будут отображаться в списке  Тип файлов. В диалоговом окне будут отображаться все файлы удовлетворяющие условию фильтрации. По умолчанию данный параметр не задан (пустая строка) и поэтому будут отображены все файлы.

  • DefaultExt (тип String) - расширение по умолчанию. Автоматически подставляется если пользователь не указал расширение.

  • FilterIndex (тип Integer) - задает маску фильтра которая будет показана при открытии диалога. По умолчанию 1, т.е. будет отображена первая маска.

Фильтр легче всего сформировать при проектировании приложения используя Инспектор объектов.

  Для этого двойным щелчком мыши нажмем в области многоточия у свойства Filter (рисунок 33). В результате мы увидим окно редактора фильтра, рабочее поле которого состоит из двух колонок. Колонка Filter Name устанавливает название маски, т.е. то что мы увидим в строке Тип файлов. Вторая колонка Filter отвечает за расширение выводимое фильтром.

Рисунок 33 – Свойство Filter

Рисунок 34 – Редактор фильтра

Рисунок 35 – Пример использования компонента OpenDialog

Для закрепления материала создадим приложение. Расположим на форме метку, кнопку и диалог открытия, примерно как показано на рисунке. Фильтр сделаем по образцу верхнего рисунка.

Для кнопки создадим следующий обработчик события -

if OpenDialog1.Execute then Label1.Caption:=OpenDialog1.FileName;

Запустив приложение и выбрав файл мы будем видеть его полное имя на месте метки.