![]() |
|
Модераторы: LSD |
![]()
|
|
| Cashey |
|
||||||||||||||||
![]() Бессмертный ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3441 Регистрация: 13.11.2002 Где: в столице Репутация: нет Всего: 60 |
Довольно часто возникает необходимость создать так называемое "дерево каталогов", т.е. отображение условных каталогов как в проводнике Windows. Разумеется речь не идет только о каталогах файловой системы. Под термином "каталог" здесь подразумевается любое условное объединение данных. На пример, различные группы записей таблицы, относящиеся к разным разделам\подразделам.
В этой статье я объясню создание простого варианта такого "дерева каталогов". И так, для создания отображения по средствам Visual FoxPro, необходимо: 1. Создать таблицу, содержащую поля, QUID, ParentQUID, Text, Lavel, в которых будут хранится соответсвенно - уникальный идентификатор текущей записи, уникальный идентификатор родительского каталога, текстовое название каталога или подкаталога и номер уровня вложенности. 2. Создать форму (или класс), на которую разместить с панели Form Controls, элемент ActiveX Control (OLEControl). В открывшемся окне Insert Object, выбрать элемент Microsoft TreeView Control, version 6 (или 5(SP2)) 3. Создать на форме (или классе) следующие методы и свойства: openDBF(), NewKey(), addCatalog(), delCatalog(), addRecord(), getSelQUID(), getlevel(), showtree() и cnextkey. А также какой-нибудь метод, запускающий процесс заполнения дерева и добавления новых каталогов. В настоящем примере, я помещю код заполнения дерева в метод Init() формы, а добавление нового каталога, в специально созданный метод формы addCatalog(). 4. Переименовать, для удобства, компонент Olecontrol1 в oleTree. 5. Заполнить свойство cnextkey значение "1_" 6. Заполнить соответсвующие методы кодом, аналогичным рассмотренному в этом примере Метод oleTree.Init()
Метод Form.OpenDBF()
Метод Form.AddCatalog()
Метод Form.AddRecord()
Метод Form.NewKey()
Метод Form.GetLevel()
Метод Form.getselquid()
Метод Form.showtree()
-------------------- библия учит любить ближнего, а камасутра обучает как именно |
||||||||||||||||
|
|||||||||||||||||
![]()
|
| Правила форума "Общие вопросы по базам данных" | |
|
|
Данный форум предназначен для обсуждения вопросов о базах данных не попадающих под тематику других форумов:
Данный форум не предназначен для:
Если вы не соблюдаете эти правила, не удивляйтесь потом не найдя свою тему/сообщение.
Полезные советы: Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, LSD, Zloxa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | СУБД, общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |