Как связать radio_button и edit_box в LISP?
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Как связать radio_button и edit_box в LISP?

Как связать radio_button и edit_box в LISP?

Ответ
Поиск в этой теме
Непрочитано 19.04.2009, 17:07 #1
Как связать radio_button и edit_box в LISP?
faust999
 
Регистрация: 19.04.2009
Сообщений: 15

Подскажите пожалуйста по автолиспу. Не могу ни как осуществить задуманное.
Хотел сделать так чтобы значиния value в поле edit_box менялись при переключении radio_button.
Спасибо за помощь заранее.
Просмотров: 1967
 
Непрочитано 19.04.2009, 20:53
#2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450


Прописывай отдельный action_tile для radio_button, в котором через set_tile устанавливай свои значения для edit_box.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 21.04.2009, 13:54
#3
faust999


 
Регистрация: 19.04.2009
Сообщений: 15


А можно поподробнее пожалуйста.
Логически я это понял еще до создания этой темы, просто не знаю как это прописать.
А прописывать это надо в LSP или DCL файле?
Может кто-нибудь поделится ссылочкой на работаючий образец?
Буду очень благодарен.
Просто пишу диплом с помщью лиспа и уперся в стену, которую не как не могу перелезть.
faust999 вне форума  
 
Непрочитано 22.04.2009, 23:41
#4
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450


Да хоть где прописывать. Если выполняемые действия занимают больше чем 20 символов, я предпочитаю использовать локальные функции. Свой код покажи - а там уже и оптимизировать можно будет...
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 23.04.2009, 00:10
#5
faust999


 
Регистрация: 19.04.2009
Сообщений: 15


код DCL окна следующий

Цитата:
stat: dialog{label="Расчет плужного каналокапателя";is_bold="true";
:radio_row{label="Выбирете данные для расчета";key="b1";
:radio_button{label="МК-19"; key="b11";value="1";}
:radio_button{label="МК-21"; key="b12";}
:radio_button{label="МД-12"; key="b14";}
} //конец радио кнопки
:column{label="Значения по оси X";children_alignment=centered;
:edit_box{label="База трактора, мм (L)";key="L";value="2800";edit_width=10;}
:edit_box{label="Расстояние до рабочего органа, мм (Xr)";key="Xr";value="4100";edit_width=10;}
:edit_box{label="Расстояние до ц.т. рабочего органа, мм (Xm)";key="Xm";value="4400";edit_width=10;}
:edit_box{label="Расстояние до опоры рабочего органа, мм (XL)";key="XL";value="4750";edit_width=10;}
:spacer{height=1;}
} //column

:column{label="Значения по оси Y";children_alignment=centered;
:edit_box{label="Глубина канала, мм (Hk)";key="Hk";value="600";edit_width=10;}
:edit_box{label="Расстояние от поверхности до силы действующей на р.о., мм(Hz)";key="Hz";value="300";edit_width=10;}
:spacer{height=1;}
} //column

:column{label="Весовые значения машины";children_alignment=centered;
:edit_box{label="Вес трактора в Н (G)";key="G";value="110000";edit_width=10;}
:edit_box{label="Вес рабочего органа в Н (Gm)";key="Gm";value="15000";edit_width=10;}
:spacer{height=1;}
} //column

:radio_row{label="Выберите тип расчета";
:radio_button{label="Статический расчет";key="stat";value="1";}
:radio_button{label="Тяговый расчет";key="taga";value="0";}
} // dialog
:spacer{height=1;}
ok_cancel_help_info;
}// конец np_tpos
код лисп файла

Цитата:
(defun stat ( / dcl_id )
(if (< (setq dcl_id (load_dialog "d:\\stat\\dialog.dcl")) 0)(exit))
(if (not (new_dialog "stat" dcl_id)) (exit))

(action_tile "b12" "(set_tile L 3000)")

(start_dialog)

(unload_dialog dcl_id)
(princ)
);конец defun
запускается все нормально, только при переключении выдает ошибку
; ошибка: неверный тип аргумента: stringp nil
я так понимаю нужно менять что-то здесь
Цитата:
(set_tile L 3000)
только что?
и еще небольшой вопрос: как сделать так чтобы не прописывать точный путь файла?
Заранее спасибо за помощь.
faust999 вне форума  
 
Непрочитано 23.04.2009, 00:29
#6
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,450


Код:
[Выделить все]
(action_tile "b12" "(set_tile \"L\" \"3000\")")
Кажется, так.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 23.04.2009, 00:43
#7
faust999


 
Регистрация: 19.04.2009
Сообщений: 15


большое спасибо, все работает, только я не понял откуда взялись слеши и что они дают, ну да ладно, со временем разберусь
faust999 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Как связать radio_button и edit_box в LISP?



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Справка по форуму Admin FAQ: Часто задаваемые вопросы 13 04.03.2014 11:12
LISP. Как определить вставку блока с xclip? Apelsinov LISP 4 18.02.2009 14:03
Мониторы LCD CRT Разное 94 17.06.2008 10:51
Как народ работает с длинными LISP файлами? {Smirnoff} LISP 7 22.01.2004 13:47