Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
Топ:
Оснащения врачебно-сестринской бригады.
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного...
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного хозяйства...
Интересное:
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Лечение прогрессирующих форм рака: Одним из наиболее важных достижений экспериментальной химиотерапии опухолей, начатой в 60-х и реализованной в 70-х годах, является...
Наиболее распространенные виды рака: Раковая опухоль — это самостоятельное новообразование, которое может возникнуть и от повышенного давления...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Цель: Изучение компонентов многостраничных панелей TabControl и PageControl.
Краткие теоретические сведения.
Многостраничные панели позволяют экономить пространство окна приложения, размещая на одном и том же месте страницы разного содержания. Каждая создаваемая вами страница компонента TabControl и PageControl является объектом типа TTabSheet. Это панель, на которой можно размещать любые управляющие компоненты, окна редактирования и т.п.
Страница имеет следующие основные свойства:
| Name | Имя, по которому можно ссылаться на страницу |
| Caption | Надпись, которая появляется на ярлычке закладки |
| PageIndex | Индекс страницы, по которому можно ссылаться на страницу |
| ImageIndex | Индекс изображения, которое может появляться на ярлычке закладки |
Из общих свойств компонента TabControl и PageControl можно отметить:
| Style | Определяет стиль отображения компонента: tsTabs — закладки, tsButtons — кнопки, tsFlatButtons — плоские кнопки. |
| MultiLine | Определяет, будут ли закладки размещаться в несколько рядов, если все они не помещаются в один ряд. |
| TabPosition | Определяет место расположения ярлычков закладок: tpBottom — внизу, tpLeft — слева, tpRight — справа и tpTop — вверху компонента. |
| TabHeight и TabWidth | Высота и ширина ярлычков закладок в пикселях. Если значения этих параметров заданы равными 0, то размеры ярлычков определяются автоматически по размерам надписей на них |
| Images | Ссылка на компонент ImageList, который содержит список изображений на ярлычках. Свойства ImageIndex страниц содержат индексы, соответствующие именно этому списку |
| ScrollOpposite | Определят способ перемещения закладок при размещении их в несколько рядов. |
| ActivePage | Имя активной страницы |
| Pages[Index: Integer] | Доступ к странице по индексу (первая страница имеет индекс 0). Свойство только для чтения |
| PageCount | Количество страниц. Свойство только для чтения |
Принципиальное отличие компонента TabControl от PageControl заключается в том, что TabControl не имеет множества панелей (страниц). Компонент представляет собой одну страницу с управляющим элементом типа кнопки со многими положениями. И надо написать соответствующие обработчики событий OnChanging и OnChange, чтобы определить, что именно должно происходить на панели при переключениях закладок пользователем. У компонента имеется еще одно свойство — MultySelect, позволяющее множественный выбор закладок. Если это свойство установлено в true, то в обработчиках событий надо описать реакцию на такой выбор пользователя.
Число закладок и их надписи определяются свойством Tabs типа TStrings. В нем вы можете задать надписи закладок. Сколько строчек надписей вы укажете, столько будет закладок. Текущее состояние переключателя определяется свойством TabIndex. Вы можете установить его в процессе проектирования, чтобы определить исходное состояние переключателя. А затем в обработчиках событий OnChanging и OnChange можете читать это свойство, чтобы определить, что именно выбрал пользователь.
Визуальные иневизуальные компоненты для создания СУБД в среде Delphi, а также методы создания таблиц БД описаны в методических указаниях к выполнению контрольных робот и в конспекте лекций.
Ход работы
Рассмотрим процесс создания приложения, имитирующего записную книжку со списком телефонов. Вид готового приложения будет следующим:

1. Создадим при помощи DataBase DeskTop таблицу notebook.db со следующими полями (процесс создания таблиц и псевдонимов подробно описан в рекомендациях по выполнению контрольных заданий)
| Имя поля | Тип поля | Описание |
| Name | Alpha[25] | Фамилия, инициалы |
| Phone | Alpha[18] | Номер телефона |
| Note | Alpha[40] | Для заметок |
2. Поместим на форму следующие компоненты: TabControl (вкладка Win32), DBGrid, DBNavigator (вкладка Data Controls), Table (вкладка BDE), DataSource (вкладка Data Access).
Зададим свойству Align компонентов TabControl значение alClient (на все окно).
В свойстве Tabs компонента TabControl введем буквы алфавита:

Для того, чтобы закладки располагались сверху – вниз, справа – налево, зададим свойству Anchors компонента TabControl значения:
akLeft -true
akTop -true
akRight - true
akBottom – true
MultiLin=true
3. Установим компонентам следующие свойства:
Table:
· DatabaseName (псевдоним базы данных) – выбираем из списка свой Alias.
· TableName – выбираем имя своей таблицы.
· AutoRefresh (обновление структуры таблицы) – устанавливаем значение true.
· Active – устанавливаем true – подключаем таблицу.
DataSource:
· DataSet (источник данных) – выбираем Table1.
DBGrid, DBNavigator:
· свойству DataSource устанавливаем значение DataSource1.
· Align (выравнивание): DBGrid – alClient (на все окно), DBNavigator – alBottom (внизу окна).
4. Создадим обработчик OnChange компонента TabControl:
procedure TForm1.TabControl1Change(Sender: TObject);
begin
table1.Filter:='Name='''+TabControl1.Tabs[TabControl1.TabIndex]+'*''';
end;
Фильтрация ведется по совпадению первой буквы фамилии. При выборе закладки автоматически формируется выражение фильтра, включающее в себя название (букву) выбранной закладки и символ «*».
5. Свойству Filtered компонента Table установим значение True.
Чтобы фильтрация выполнялась независимо от регистра букв и по частичному совпадению установим параметры свойства Filtered компонента Table следующим образом:
foCaseInsensitive – True
foNoPartialCompare – False
Для того, чтобы сразу же после загрузки приложения компоненты появлялись в отсортированном виде, для свойства OnCreate формы выберем из списка TabControl1Change.
Выполнить самостоятельно:
1. Создать всплывающие подсказки (Hint) для каждой из кнопок DBNavigator
2. Русифицировать названия полей таблицы (см. рекомендации к выполнению контрольных работ).
| 1 | Переход на первую запись | 6 | Удалить запись |
| 2 | Переход на предыдущую запись | 7 | Редактировать запись |
| 3 | Переход на следующую запись | 8 | Сохранить изменения |
| 4 | Переход на последнюю запись | 9 | Отменить изменения |
| 5 | Добавить запись | 10 | Перечитать таблицу |
Результатом выполнения данной лабораторной работы являются созданный согласно заданию программный продукт. Выполненное задание должно быть предъявлено преподавателю в электронном виде. В ходе защиты лабораторной работы студент должен продемонстрировать свои навыки работы с изученными компонентами и методами проектирования интерфейса пользователя.
|
|
|
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!