Offline версия форума по Ms Access . Продукт: Ms Access 97 Автор: Митин Андрей. сайт http://am.rusimport.ru Скачать: с сайта автора http://am.rusimport.ru/MSAccess/topic.aspx?ID=27 там же вы найдете OCX необходимые для работы программы. Эта работа представляет собой простой пользовательский интерфейс для форума по Ms Access , который создатели форума выложили в формате mdb на своем сайте index.php?option=com_content&task=view&id=730&Itemid=35. Программа позволяет осуществлять поиск и отображение информации из данного форума. Поиск можно осуществлять по следующим полям форума в любых комбинациях: - Автор (e-mail); - Автор (ник); - Дата сообщения; - Тело сообщения; - Тема сообщения; - Тема и тело сообщения. Каждое непрочитанное сообщение в дереве сообщений отображается жирным шрифтом. После его прочтения (интервал, после которого сообщение считается прочитанным можно настроить - меню "Сервис" -> "Настройки") оно будет отображаться обычным шрифтом. При построении дерева сообщений жирным будут помечены прочитанные Вами сообщения, если хоть один ответ на него (или на любой из его потомков) является непрочитанным. К сожалению организация дерева с помощью смежных вершин графа (система Parent-Child) приводит к необходимости применять рекурсивный алгоритм проверки "непрочтенности" узла, что приводит к необходимости делать многократные выборки из базы, что не может сказаться на быстродействии. Я реализовал алгоритм таким образом, чтобы минимизировать количество выборок, поэтому наиболее долго будут открываться уже в основном прочитанные сообщения (потому что в данном случае приходится проверять по всей глубине дерева). В любом случае в программе можно отключить данный режим (меню "Сервис" -> "Настройки") и тогда каждое сообщение будет помечаться само по себе, независимо от своих потомков. В программе реализован механизм подкачки новых сообщений (авторы сайта обещают периодически выкладывать новый архив форума). Для этого необходимо в меню "Сервис" выбрать пункт "Импорт" и указать файл mdb с новыми сообщениями. В случае, если организаторы форума обеспечат возможность запрашивать новые данные через интернет, то возможно организовать автоматическую подкачку новых сообщений. Весь код программы абсолютно открыт (open source :)), в нем можно почерпнуть множество полезных решений, несколько практически готовых и удобных для повторного использования блоков. Например: - Класс CTree облегчает работу с ActiveX контролом MSComctlLib.TreeView. Позволяет создавать деревья на основе таблиц с представлением дерева с помощью смежных вершин графа либо с помощью одного строкового поля. Даёт возможность организовывать деревья с динамической подкачкой дочерних веток. Очень прост в применении. - Класс CFilter и сопутствующие модуль и таблица обеспечивает единый интерфейс для ввода пользователем различных фильтров и последующим применением их на произвольном количестве форм. Позволяет сохранять любое количество фильтров пользователя (для каждого из пользователей системы - свой набор), помнит последний использованный пользователем фильтр и автоматически его подгружает. - Класс UDialog - позволяет организовывать единый интерфейс для запроса у пользователя произвольного набора параметров (с возможностью выбора из существующих таблиц). - Универсальный механизм выбора нескольких (набора) параметров (форма frmRegionL) с возможностью сохранять наборы в файл и потом подкачивать их из ранее сохраненных файлов. - Процедура регистрации необходимых для программы библиотек в системе. - Процедуры сохранения и восстановления настроек для конкретного пользователя. - Свой StatusBar с ProgressBar-ом. - Пример работы с Richtx32.ocx. - Модуль работы с реестром и многое другое. Надеюсь в случае их использования Вы не будете убирать из кода © :) В программе использованы стандартные библиотеки от Microsoft: Ms Common Controls (Mscomctl.ocx), Ms Common Controls2 (Mscomct2.ocx), Ms RichText control (Richtx32.ocx). Все 6-ой версии. Если Вы уверены, что на машине они есть, то скачивать их отдельно нет необходимости. Если же их нет, либо Вы не уверены :), то лучше скачать прилагаемые файлы библиотек, и при первом запуске распаковать их в каталог программы. Так же при запуске программы в одном каталоге с ней должен находится сам файл данных HiProgMSA.mdb Благодарности :) 1. Хотелось бы выразить свою благодарность Гришанову Герману. Он является одним из самых сильных программистов, которых я знаю, я многому у него научился и думаю многому ещё научусь! :). В программе amKMForum класс UDialog - его работа. 2. Так же хотелось бы поблагадорить Грибанова Сергея Юрьевича (e-mail
Этот e-mail защищен от спам-ботов. Для его просмотра в вашем браузере должна быть включена поддержка Java-script
) за его Rules98.mdb, откуда и взята идея и частично интерфейс класса CFilter.
 Просмотров: 11764
 Ваш коментарий будет первым | | |