| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Экспертная система |
| Автор: Student00 3.2.2008, 12:52 | ||
| Прогнали меня отсюдова http://forum.vingrad.ru/forum/topic-192138/anchor-entry1400546/0.html Пришел к вам помощи просить. )) Вобщем куча проблем и очень мало решений... --- Программа пишется на Delphi 7 --- Опишу ситуацию: 1) Сама программа предполагает: Выбор бытовой техники. Когда пользователь не разбирающийся что к чему путем ответов на наводящие вопросы придет к оптимальному решению. 2) Интерфейс, как можно увидеть - вроде бы создан. Подгружаются вопросы. Сохраняются ответы (answers.ini) 3) Как можно увидеть формат записи (больше я ничего не придумал) текущих ответов RadioGroup1Click такой:
где [Item0] - группа товаров. Q0 - номер вопроса. 0, 1, 2 - индексы ответов. 4) Первостепенная проблема такая: Надо как-то суммировать все варианты ответов, но при этом, организовать код, так, чтобы if then свести к минимуму. Т.е. проще говоря, что бы пользователь-админ мог без вмешательство в код Delphi добавлять или удалять вопросы (с ответами конечно). А программа не кричала, что мол не найден вопрос. Что касается самого добавления и удаления - это потом. Главное сейчас организовать процедуру, которая как бы считывала из answers.ini параметры (текущий вид товара, количество вопросов по этому виду, ну и какие индексы ответов в текущий момент имеются), что бы вернувшись назад и снова ответив на вопросы новые индексы опять считывались и исходя из этого выдавался соответствующий ответ. Как все это организовать в Delphi я понятия не имею. Возможна имеющаяся структура ini файлов не позволят это сделать? Поэтому прошу, пожалуйста, товарищи, помогите!!!!!!!! |
| Автор: lukas 3.2.2008, 17:13 |
| я не пойму в чем проблема? записать это в ини файл или придумать систему распознавания N-кол-во вопросов? в ини можно записать что угодно, любое дерево можно представить в плоской записи.... |
| Автор: Qu1nt 3.2.2008, 17:33 |
| Я бы использовал XML. |
| Автор: Student00 3.2.2008, 21:17 | ||
А поддерживает ли Delphi 7 такой формат В смысле для ini файл есть такой модуль uses: IniFiles и класс (м/б не класс): TIniFile А для xml есть что-нить подобное? |
| Автор: EvilsInterrupt 3.2.2008, 22:34 |
| Student00, Ну сколько можно упомянать про XML Data Binding блин ??? Я уже одному тут на форуме алгоритм, как и что жать и как применять на деле показал!!! |
| Автор: Student00 4.2.2008, 02:27 | ||
Блин я все нафиг переделал. Решил в качестве БД использовать не какой-то ini, а полноценную БД на Microsoft Office Access 2003 Поэтому возможно в этом разделе тема опять не прокатит. Вот не знаю опять создавать тему или же постить здесь? Просьба скачать файл прежде чем читать дальше 1) Как видно на первой странице мы в компонент DBLookupComboBox1 из BD.mdb присваеваем значения из таблицы "kat". 2) Переходим на следующую страницу и начинаются проблемы: Компонент DBLookupListBox1 должен отображать список вопросов, соответствующих выбранной на первом шаге категории. Для этого он обращается к таблице "vopros", но выводятся все вопросы какие есть в таблице. Подскажите пожалуйста что нужно сделать чтобы было как должно быть. Возможно нужно подругому организовать БД, возможно нужно что-то сделать (прописать в коде, либо может компонент какой бросить или заменить) - я не знаю. |
| Автор: Insert 4.2.2008, 11:53 |
| Раз такой разговор пошел, то в идеале пользовать нейросети. |
| Автор: Student00 4.2.2008, 16:30 | ||
| Проблема опять такая: Выбрав из компонента DBLookupListBox1 строку, т.е совершив событие onClick обращаемся к БД таблице otvet и получаем список ответов соответствующих выбранному вопросу. Компонент DBRadioGroup1 как бы принимает эти данные о количестве ответов и динамически добавляет нужное количество радиокнопок. Пробовал как и раньше MasterFields, Датасоурсы, тейбл, Квери... Ничего не получается. Возможно необходимо программно прописать. Пытался реализовать и это но ничего не получилось:
Так д/б быть но на самом деле этого нет. Помогите, пожалуйста сделать. )) Прилагаю последнюю версию программы. |
| Автор: Student00 4.2.2008, 19:00 |
| up |
| Автор: Student00 4.2.2008, 21:11 | ||
Вроде бы программа запускается, но когда совершаю указанное событие - зависает и в месте, где д/б радио кнопки - что-то похожее на вкл/выкл. Есть подозрения, что написана фигня. |
| Автор: D7_beginner 5.2.2008, 06:53 |
| Держите пример думаю это то что вы хотели |
| Автор: Student00 5.2.2008, 09:02 | ||
Огромное вам спасибо!!! ))) |
| Автор: optik 13.5.2008, 18:34 |
| автор, будь добр, скинь пожалуйста проект который запускается без ошибок, а то прога, прикреплённая в последнем сообщении почему то не особо пашет (говорит что не хватает какого то компонента XPMan, предлагает его удалить и потом соответсвенно не работает) или подскажи вкратце как запустить прожку правильно? |
| Автор: ZBugz 15.5.2008, 07:36 | ||
Поставь Делфи 7 и выше. |
| Автор: SneG0K 15.5.2008, 08:40 |
Я полагаю, что это XPManifest, а он никакой роли в программе не играет. Он только отвечает за прорисовку компонентов как в XP а не 9х |