|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
10.04.2017, 15:36 | #1 | |
Как дополнить код программы, чтобы данные вводились через диалоговое окно?
Регистрация: 25.02.2010
Сообщений: 24
|
||
Просмотров: 4630
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
У тебя на accept повешен код
Код:
Добавлю: смысла здесь вызывать num, по-моему, никакого нет. И я не уверен, что там можно обойтись без progn
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Бога ради. Мне значительно проще сначала получить ответ от пользователя, а потом его обрабатывать. Но это дело вкуса.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 25.02.2010
Сообщений: 24
|
Цитата:
Код:
Цитата:
Если я убираю эти аргументы, то командная строка ругается неверная функция: 1 Пытался покопаться в progn, но что-то ничего не нашел. Может наводочку какую дадите |
|||
|
||||
Соглашусь с Алексеем. Никакого смысла вызывать num этой строке (action_tile "accept" "(num) (done_dialog 1)") нет, так как по нажатию OK диалог завершится с кодом возврата 1 (done_dialog 1) и далее if запустит num правильно
Строчки должны выглядеть так Код:
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
Регистрация: 25.02.2010
Сообщений: 24
|
Ну теперь совсем плохо. При нажатии кнопки ОК выдает ошибку: неверная функция 1. Ох, не везет мне что-то с этими кодами... И главное, понять не могу где ошибка. Отладка показывает, что функция num не вызывается (т.е выполнение кода останавливается в конце диалога).
|
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Если правильно ввел action_tile, то не должно. ПОказывай свой код.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 25.02.2010
Сообщений: 24
|
Да верно все. Все прошерстил, ничего не понимаю уже. Теперь (после советов уважаемого roaa) выдает неверный аргумент и возвращает stringp 2.5. Что это за аргумент такой не понятно.
Вот подкорректированный код Код:
Код:
|
|||
|
||||
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
первый мастдай - переопределение глобальной функции *error*использование в ней локальной переменной...
второй локальный армагедец - вот это ну, во-первых, зачем использовать action_tile, если можно не использовать. во-вторых, зачем называть функцию отклика по лайбе кнопки, если у нее есть имя... в-третьих, функция отклика должна отражать событие, то есть клик по кнопке в данном случае, и что такое таб тогда? ну, и в-четвертых, почему нельзя предусмотреть в функции отклика закрытие диалога, вместо того чтоб городить s-выражения в строке? остальные армагедцы не так значительны,но их достаточно |
|||
|
||||
gomer, Мое сообщение относится к проверке того, что после исправлений код топикстартера запустится и выполнится, а не вывалится по фатал error. Переписывать задачи не стояло.
Из твоего сообщения согласится можно только со вторым абзацем. А по поводу *error* - нет там переопределение глобальной функции. Этот прием известен достаточно давно. Код:
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
||||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Эвакуация из подвала через окно, через соседнее помещение | Route | Прочее. Архитектура и строительство | 7 | 24.03.2017 16:18 |
Tekla Structures. Как добавить в диалоговое окно пользовательского компонента битовую маску болтов. | ashas- | Tekla | 2 | 25.12.2015 11:57 |
Как вернуть диалоговое окно "Инф-я о замистителях"(Autocad 2004,2008)? | wiznv | AutoCAD | 3 | 07.04.2011 06:44 |
При команде Open не открывается диалоговое окно | Jull | AutoCAD | 4 | 28.02.2006 11:19 |