|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Как создать кнопку, чтобы ее иконка менялась в зависимости от значения переменной автокада?
Самозанятый КМ+КМД
Раменское
Регистрация: 09.09.2004
Сообщений: 1,852
|
||
Просмотров: 9390
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,377
|
Думаю, только программно.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Самозанятый КМ+КМД Регистрация: 09.09.2004
Раменское
Сообщений: 1,852
|
на Lispе?
В нижнем правом углу есть кнопки, которые меняют свой вид.. и в Архитектурном автокаде, есть кнопка, которая мне нужна. Как называет программа чтобы сделать такую кнопку? Можно ли перенести её из Архитектурного автокада? Или где они там вообще хранятся? На сколько всё сложно? День работы, два дня? |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,377
|
Совсем необязательно.
Вот такое на лиспе вряд ли удастся реализовать. Ну так и используй его, кто мешает? Вряд ли. В любом случае, получается, что ты ошибся с разделом. Тебе в "Поиск исполнителей" надо.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Самозанятый КМ+КМД Регистрация: 09.09.2004
Раменское
Сообщений: 1,852
|
Нашел приложение http://www.jtbworld.com/osnapzbg.htm
не понятно, как эти кнопки должны появиться и где?.. вот сижу разбираюсь. Если исполнителя искать, то нужно хотя бы примерно знать, что нужно. Эта кнопка хранится в ARX файлах архитектурного автокада? Последний раз редактировалось Колян, 08.01.2015 в 00:55. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
К сведению кнопки лиспом меняли еще здесь
Возможно ли ЛИСПом посадить иконку на кнопку Как ЛИСПом поменять цвет текста нажатием кнопки мышки PS Раз там Малявка разобралась, может и не придется идти в "Поиск исполнителей"
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 08.01.2015 в 17:53. |
|||
![]() |
|
||||
Самозанятый КМ+КМД Регистрация: 09.09.2004
Раменское
Сообщений: 1,852
|
Здесь кнопка меняется при нажатие на неё, а у меня задача, менять кнопку в зависимости от значения переменной.
Понятно, что можно менять кнопку, если применить такую команду, которая сразу будет менять значение переменной и картинку кнопки. (только я не знаю как это сделать) Я порылся в программе osnapzbg, она действительно работает, есть возможность менять цвет фона, или цвет закладки, цвет перекрестия. Протестирую, а потом запишу видео, на эту тему. Пока работает удобно! |
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
Колян, кажется, я знаю, как это сделать. Расскажи, какая нужна переменная и предоставь иконки на эту кнопку. И еще надо понять: по нажатию этой кнопки нужно переменную менять или кнопка нужна только для индикации. Зависит еще от того, сколько возможных значений у этой переменной. В общем, продумай хорошенько все нюансы и опиши подробней. Я постараюсь состряпать код по мере возможности. На лиспе. Если это еще актуально.
|
|||
![]() |
|
||||
Самозанятый КМ+КМД Регистрация: 09.09.2004
Раменское
Сообщений: 1,852
|
Программа эта работает и меняет цвет курсора, но работает она с маленькими глюками: меняет вид курсора, убирает эскизы курсоров из настроек.
Плюс к этому она меняет цвет слова Model, что оказалось удобней цвета курсора. Поэтому я попросил бы сделать такую команду, которую можно было повесить на кнопку, которая бы при изменение переменной osnapz на 0 меняла бы цвет слова Model на красный, а при osnapz = 1 на черный (при этом эта кнопка бы меняла бы и переменную с 0 на 1, или с 1 на 0). Просто команда, может быть маленький лисп, иначе люди не поймут, что и к чему. вот скрипт, чтобы нажимая на кнопку переключалось с 0 на 1 или с 1 на 0 osnapz $M=$(-,1,$(getvar,osnapz)) Последний раз редактировалось Колян, 21.01.2015 в 20:51. |
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
Слово "Model" на вкладке, как и названия всех листов, всегда принимают цвет, равный цвету курсора. Можно убедиться в этом, если поменять цвет курсора в настройках. Поэтому черный цвет будет означать такой же и у перекрестья, как оно (гипотетически) тогда будет видно на черном же фоне? Фактически же при черном цвете фона не получится поставить черный курсор, разве только темно-серый, но можно глаза сломать.
А в остальном проблем быть не должно. Попробую что-нибудь сделать по мере возможности. Цитата:
![]() |
|||
![]() |
|
||||
Самозанятый КМ+КМД Регистрация: 09.09.2004
Раменское
Сообщений: 1,852
|
|
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
Цитата:
![]() Все что я сделал - это слегка доработал код VVA, по указанной им выше ссылке. Во вложении комплект необходимых файлов и инструкция, подправленная под данный случай. Кнопки - оставил те же: красный крестик и зеленая галочка, по-моему красивее скучных 1 и 0. Но можно их вставить туда любые, поменяв им имена на On.bmp (1) и Off.bmp (2), или исправить имена в коде. Последний раз редактировалось skkkk, 22.01.2015 в 17:46. |
|||
![]() |
|
||||
Дизайнер-конструктор Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
![]() |
skkkk,
1.если нажимать несколько раз на кнопку- не переключается. Но если раз нажал на кнопку, а потом выбрал например _line, то после такой манипуляции- кнопка уже переключается. если еще раз нажать кнопку- опять не срабатывает. 2. Кроме того, в readme есть Цитата:
__________________
Kiev, Ukraine Последний раз редактировалось sasha_lif, 22.01.2015 в 17:23. |
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
Цитата:
Впрочем, я догадываюсь, что дело может быть в том глюке, который делает цвет слова "Модель" на вкладке черным. Тестируя сейчас, обнаружил, что черным становится не только это слово, но и рамка выбора. Поэтому изменил на белый. Правда, затер случайно комментарий. Однако в коде одна единственная цифра "0" ![]() В общем, в #12 перезалил архив. |
|||
![]() |
|
||||
Дизайнер-конструктор Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
![]() |
skkkk,
такое впечатление, что где-то лишний раз вызывается команда за ОДНО нажатие дает Цитата:
Вначале на тулбар иконку какую присваивать- on или off? А подскажите ,что нужно поменять, чтобы наооборот, при osnapz 0- все было стандартным белым,а при osnapz=1- красным так привычней работать
__________________
Kiev, Ukraine Последний раз редактировалось sasha_lif, 22.01.2015 в 18:06. |
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
На 2012 было тоже самое, когда пробовал исходный вариант с caduser. Кнопка обновляла внешний вид только после выполнения какого-то действия по рисованию.
|
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
Не важно. Можно вообще никакую не вешать, лисп сам разберется потом, что к чему
![]() Тут важнее другое: пока не нажмешь кнопку во вновь открытом файле, не факт, что она будет показывать правильную информацию. Выхода тут два: либо подключать реактор, что не очень охота для такой пустячковой задачи, либо прописать каждому юзеру некую строку в файле acaddoc20ХХ.lsp, но у Коляна аллергия на все, что сложнее обычной загрузки лиспа ![]() Цитата:
Код:
Код:
Последний раз редактировалось skkkk, 22.01.2015 в 18:31. |
|||
![]() |
|
||||
Дизайнер-конструктор Регистрация: 29.05.2004
Kiev
Сообщений: 1,179
![]() |
skkkk, спасибо, да, я в acaddoc20ХХ.lsp,допишу
(Command "OSNAPZ" "0") У вас не глючит, если несколько раз вподряд нажимать на кнопку, как я писал в №14? У меня такое впечатление что гд-то лишний раз ENTER в лиспе срабатывает. Проверьте код Например, если я открою второй документ, тут же закрою его, и в первом нажму на вашу кнопку, то сработает команда open и ваш лисп
__________________
Kiev, Ukraine |
|||
![]() |
|
||||
Регистрация: 20.03.2008
Сообщений: 2,680
|
В справке пишут, что значение OSNAPZ не сохраняется, и начальное значение 0. Поэтому я и выбрал такой путь, не ставить иконку вручную, а доверил все лиспу, он в любом случае ее включает при первом нажатии.
Нужно бы, чтоб кнопка менялась и при изменении этой переменной вручную, через комстроку. А это только через реактор. Подумайте, если вам это будет нужно, сделать это несложно. Тестируйте пока так, может, еще какие будут замечания. ----- добавлено через ~4 мин. ----- sasha_lif, у меня работает четко. Команды в лиспе не задействованы, поэтому энтер там нажимать нечему. По идее. А там кто знает... Может, это что-то из уже загруженных лиспов конфликтует? Есть лиспы в автозагрузке? А с реакторами? Может, попробовать выгрузить всё для чистоты эксперимента? Последний раз редактировалось skkkk, 23.01.2015 в 00:46. |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Разработка ПОС, искусство проектирования | Tyhig | Технология и организация строительства | 117 | 25.11.2021 17:38 |
Какой язык перспективен для инженера-конструктора с условием | The_Mercy_Seat | Программирование | 705 | 17.03.2021 14:19 |