|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
- Регистрация: 31.07.2005
Ухта
Сообщений: 381
|
nikе, спасибо конечно за труд, но столько много всего, а особенно скобок на отдельных строках. Мне бы принцип логический, как это сделать какие параметры нужно сохранять и как это лучше сделать.
Спасибо и за предложения с *.ini но с LISPом практичнее я с вами согласен... А на счет бесплатного САПРа есть мнение у каждого. А когда человек учится этому, делать это нужно бесплатно, так как нужна помощь, в процессе которого ты получаешь знания, а так же мнения со стороны и варианты решения различных вопросов.
__________________
Я не волшебник, я только учусь… |
|||
|
||||
конструктор Лего Регистрация: 21.10.2005
Краснодар
Сообщений: 204
|
Привет, Владимир М. Выложенный мной лисп сохрани в файл INI-EDIT.LSP. Он содержит библиотечные функции для работы с ini файлами. Добавляешь в свою программу строку
(load "INI-EDIT.LSP" ) и эти функции доступны из твоей программы. В комментариях даны примеры использования этих функций. Положим, что имеем файл sp.ini со следующим содержанием: [poz_sec] poz_vol=4e6613 [dl_sec] dl_vol=4560 [kol_sec] kol_vol=81 [nfas_sec] nfas_vol=0 [rfas_sec] rfas_vol=0 [fas_sec] fas_vol=0 [armature_sec] armature_vol=1 Например так можно записать в sp.ini новое значение nfas_vol, считывая его из текстового окошка диалогового окна. (ini_writeentry "sp.ini" "nfas_sec" "nfas_vol" (get_tile "nfas")) А так прочитать значение этой переменной (setq nfas (ini_readentry "sp.ini" "nfas_sec" "nfas_vol")) и установить это значение в в edit box диалогового окна (set_tile "nfas" nfas) |
|||
|
||||
конструктор Лего Регистрация: 21.10.2005
Краснодар
Сообщений: 204
|
2 Владимир М
Еще хотелось бы тебя попросить чтоб ты по возможности переделал библиотеку слайдов на отдельные файлы слайдов, т.к. IntelliCAD не поддерживает работу с библиотеками слайдов. Т.е. программа прокат работает но в диалоговом окне не отображаются картинки с профилями. В АСADе естественно все нормально, но для тех, кто работает в ACAD эта программа не нужна, тк могут работать например с ProjectStudio CS. А твоя программа больше нужна тем, кто работает с бесплатными или платными, но с разумной ценой в пределах 100-200 у.е. программами типа ProgeCAD ( a ProgeCAD LT вообще бесплатна, но поддерживает урезанный лисп без vl- функций и компилирующей функции function) |
|||
|
||||
Армспорт Регистрация: 18.07.2006
Ейск
Сообщений: 355
|
Цитата:
Код:
|
|||
|
||||
- Регистрация: 31.07.2005
Ухта
Сообщений: 381
|
Евгений А. не стоит обижать друг друга мы же не для этого здесь собираемся тем более высшее общество должно вести себя достойно и в рамках приличия, зачем судить каждого лучше следить за собой. А вот Бог пусть нас рассудит. А ту какая-то свинья получается... ну и новый год будет....
__________________
Я не волшебник, я только учусь… |
|||
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,835
|
>Евгений А.
Я бы ОЧЕНЬ не советовал Вам (и другим тоже) хранить в реестре какие-то локальные переменные. Архинеправильно, батенка! Не для этого реестр предназначен! Локальное значение прекрасно храниться самим Лиспом. В одном варианте В.Кондрата, который он мне присылал, так было и сделано.
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... |
|||
|
||||
Армспорт Регистрация: 18.07.2006
Ейск
Сообщений: 355
|
Цитата:
|
|||
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,835
|
Цитата:
О использовании реестра для прикладных программ можно прочитать в книге "САПР на базе..." стр.98-105 В моём (я писал выше) варианте ПРОКАТ работает сохранение состояния в Лиспе и без реестра, что есть значительно проще и чище. ЯТД
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... |
|||
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,835
|
>Евгений А.
Цитата:
перевести из локальной в глобальную и она будет храниться во время сеанса.
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... |
|||
|
||||
Армспорт Регистрация: 18.07.2006
Ейск
Сообщений: 355
|
Дружище, любой программист тебе скажет, что использовать глобальные переменные - это ОЧЕНЬ-ОЧЕНЬ плохо, не профессионально и неоправданно!!! Нет никакой гарантии, что другая программа написанная каким-нибудь юзером :shock: не будет использовать и изменять значение глобальной переменную под именем (к примеру) RR!
А попробуй теперь представить, что в программе несколько окон и в каждом окне хотя бы с десяток пунктов которые надо сохранять!!! И что??? Под сотню глобальных переменных? Очень удобно! А в моём примере, достаточно только вбить в SPISOK_TILE только все сохраняемые ключи (key), и значения таким же макаром можно скидывать в локальный список и потом его использовать вместо переменных. Помоему проще уже некуда! |
|||
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,835
|
>Евгений А.
Цитата:
Дружище, любой программист тебе скажет, что бо'льшая свалка мусора чем Интернет, это только реестр Widows. И использовать его надо очень аккуратно, без излишеств, т.е. без ненужных записей. Вот, например, прописать туда путь к какой-то большой программе, к которому можно пристёгивать все остальные пути, это ИМХО самый раз! Сохранение же локальных переменных, имеющих смысл только в этом чертеже и этом сеансе, в реестре - это ОЧЕНЬ-ОЧЕНЬ плохо, не профессионально и неоправданно!!! Для этого можно (и нужно в достаточно больших программах) использовать другие средства, например, INI-файлы, словари, расширенные данные и т.д..
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... |
|||
|
||||
Армспорт Регистрация: 18.07.2006
Ейск
Сообщений: 355
|
Цитата:
Цитата:
А на счёт "свалки" лучше сами рассудите: если записей много и все серьёзные программы (соответственно программисты) используют реестр, то наверно не потому, что там приятно мусорить, а потому, что ОЧЕНЬ легко и удобно!!! |
|||
|
||||
- Регистрация: 31.07.2005
Ухта
Сообщений: 381
|
Думаю по этому спорить особо не надо. Я думаю, реестр нужен не только для этих целей. Можно контролировать на наличие использование программы в целях авторских прав. Даже при наличии удалении программы необходимо оставить инфо о пользовании программы. Но наша программа бесплатная, так что не чего туда и лесть в этот реестр.
Если программа серьезная и написанная, например на C++, то это другой разговор. Так что лезть туда пока не собираюсь. А вот с Лиспом пока не получается, вроде логику понял, но что-то не выходит, может кто-то поможет ... или выложить код?
__________________
Я не волшебник, я только учусь… |
|||
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,835
|
Цитата:
Не все значения нужно сохранять, а только номера: списка профилей и профиля. Всё это можно записать в строку ИНИ-файла в папке Procat (а лучше и чище в рабочей папке). Здесь я могу помочь, если тебе не понятно как. Но для меня гораздо интереснее добавить радио-кнопки для стали. Я почти это сделал. Поэтому, я тебя прошу. Проверь/протестируй те тексты, которые я прислал 1.01.2007. Дай сигнал ПГ на опубликование объединительной (единой для рус/анг Акада) версии.
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... |
|||