Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Цель: Изучение компонентов многостраничных панелей TabControl и PageControlКраткие теоретические сведения. Многостраничные панели позволяют экономить пространство окна приложения, размещая на одном и том же месте страницы разного содержания. Каждая создаваемая вами страница компонента TabControl и PageControl является объектом типа TTabSheet. Это панель, на которой можно размещать любые управляющие компоненты, окна редактирования и т.п. Страница имеет следующие основные свойства:
Из общих свойств компонента TabControl и PageControl можно отметить:
Принципиальное отличие компонента TabControl от PageControl заключается в том, что TabControl не имеет множества панелей (страниц). Компонент представляет собой одну страницу с управляющим элементом типа кнопки со многими положениями. И надо написать соответствующие обработчики событий OnChanging и OnChange, чтобы определить, что именно должно происходить на панели при переключениях закладок пользователем. У компонента имеется еще одно свойство — MultySelect, позволяющее множественный выбор закладок. Если это свойство установлено в true, то в обработчиках событий надо описать реакцию на такой выбор пользователя. Число закладок и их надписи определяются свойством Tabs типа TStrings. В нем вы можете задать надписи закладок. Сколько строчек надписей вы укажете, столько будет закладок. Текущее состояние переключателя определяется свойством TabIndex. Вы можете установить его в процессе проектирования, чтобы определить исходное состояние переключателя. А затем в обработчиках событий OnChanging и OnChange можете читать это свойство, чтобы определить, что именно выбрал пользователь. Визуальные иневизуальные компоненты для создания СУБД в среде Delphi, а также методы создания таблиц БД описаны в методических указаниях к выполнению контрольных робот и в конспекте лекций. Ход работы Рассмотрим процесс создания приложения, имитирующего записную книжку со списком телефонов. Вид готового приложения будет следующим:
1. Создадим при помощи DataBase DeskTop таблицу notebook.db со следующими полями (процесс создания таблиц и псевдонимов подробно описан в рекомендациях по выполнению контрольных заданий)
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. Русифицировать названия полей таблицы (см. рекомендации к выполнению контрольных работ).
Результатом выполнения данной лабораторной работы являются созданный согласно заданию программный продукт. Выполненное задание должно быть предъявлено преподавателю в электронном виде. В ходе защиты лабораторной работы студент должен продемонстрировать свои навыки работы с изученными компонентами и методами проектирования интерфейса пользователя.
|