Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Создание формы, иллюстрирующей отношения родитель/потомок
1. Создайте новый проект. Поместите в форму поле ввода, две метки, элемент MS FlexGrid и два элемента управления данными. Предварительно необходимо добавить элемент MS FlexGrid к панели инструментов. Откройте диалоговое окно Components и выберите Microsoft FlexGrid Control 6.0 (этот элемент находится в файле Msflxgrd.ocx). 2. Присвойте свойству Caption метки Labell значение «Издательство». Для второй метки оставьте свойство Caption пустым, оно будет изменено во время выполнения программы (см. рис.):
3. Элемент управления данными Datal должен создать набор записей обо всех издательствах. Он будет родителем. Установите для него свойство DatabaseName равным полному пути к копии базы Biblio.mdb. Затем установите свойство RecordSource равным Publishers, свойству Caption также присвойте значение «Издательства». Это будет напоминать пользователю о том, что элемент управления данными служит для навигации по одноименной таблице. 4. Элемент управления данными Data2 должен сформировать набор записей о книгах, которые связаны с текущей записью набора, созданного элементом Datal. Установите свойство DatabaseName равным полному пути к копии базы Biblio.mdb. Оставьте пока свойство RecordSource для элемента Data2 пустым, а свойство Visible установите равным False. Вы будете сами управлять этим элементом, так что пользователю его видеть не следует. Свойству Caption присвойте значение «Названия». Элемент во время выполнения не отображается, но при проектировании обязательно появится на экране, так что неплохо бы показать, для чего он используется. 5. Для элемента Textl задайте свойство DataSource равным Datal, а свойство DataField равным Name. Теперь в этом поле будет отображаться название издательства из текущей записи набора, созданного элементом Datal. 6. Для элемента MS FlехGrid задайте свойство DataSourse равным Data2. Не забывайте, что в этом элементе должны отображаться книги, опубликованные текущим издательством. Во время выполнения программа будет запрашивать у элемента управления данными соответствующий набор записей. 7. Поскольку табличный элемент управления самостоятельно определяет размеры ячеек, может получиться так, что часть информации будет «обрезана». Поэтому разрешим пользователю изменять параметры сетки. Задайте для свойства AllowUserResizing значение 3 - flexResize Both. В результате с помощью мыши можно будет менять высоту строки и ширину колонки. Позже будет показано, как увеличивать или уменьшать ширину колонки из программы, чтобы. она точно соответствовала размеру отображаемого поля. 8. Теперь придется написать немного кода. Дважды щелкните по элементу Datal и выберите событие Reposition (Изменение позиции). Добавьте следующий код в обработчик этого события:
Private Sub Data1_Reposition() Dim IPubID As Long IPubID = Data1.Recordset! PubID Data2.RecordSource = " SELECT * FROM TITLES WHERE PubID = " & IPubID Data2.Refresh End Sub
Вы просите выбрать все записи из таблицы Titles, для которых поле PubID равно значению переменной IPubID, где хранится значение поля PubID из текущей записи в наборе, созданном элементом управления данными Datal. 9. В обработчик события Text l_Change для поля ввода добавьте следующий код:
Private Sub Text1_Change() Label2.Caption = " Название издательства: " & Text1 End Sub
10. Запустите программу.
С помощью навигационных кнопок элемента Datal пройдитесь по набору записей из таблицы Publishers. Понаблюдайте, как в табличном поле отображаются книги, опубликованные издательством, которое указано в текущей записи.
|