Re: Как ЛИСПом поменять цвет текста нажатием кнопки мышки
> Малявка
Нужно все с двойным слешом, вот так например
"C:\\Progam files\\AutoCAD 2004\\Support\\on.bmp")(load "C:\\Progam files\\AutoCAD 2004\\Support\\TGBD.lsp"
Незаметила(((
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Программирование → LISP → Как ЛИСПом поменять цвет текста нажатием кнопки мышки
Чтобы отправить ответ, вы должны войти или зарегистрироваться
> Малявка
Нужно все с двойным слешом, вот так например
"C:\\Progam files\\AutoCAD 2004\\Support\\on.bmp")(load "C:\\Progam files\\AutoCAD 2004\\Support\\TGBD.lsp"
Незаметила(((
> Makson
Спасибо, попробую...
> Малявка
1. В лиспе нужно не "\", а "\\" ("C:\\Progam files\\AutoCAD ...) .
2. Лучше использовать (findfile "on.bmp") и сравнивать имя файла
3. Кнопка должна быть расположена в группе меню ACAD и панель должна называться "Toolbar1"
А в остально Makson респект. Возьму на вооружение
http://keep4u.ru/full/080520/ae594811c442eb0176/jpg
> VVA
Я понимаю, я в коде переназвала Тулбар1 на свой тулбар2. Так что с этой стороны не должно быть заморочек. Сейчас попробую (findfile...)
p.s. классная ссылка! ХОЧУ ТАКУЮ ЖЕ КНОПКУУУУ!!!!
Картинку еще здесь можно посмотреть http://dwg.ru/f/showthread.php?t=20686
> VVA
не пойму в какое место кода вставить (findfile...)
> VVA
Да блин, как же должен выглядеть код? Я щас зареву...
У меня сейчас обед. Поделю его пополам с тобой. В первую половину поем, во вторую напишу инструкцию и выложу код. Приятного мне аппетита :)
На основе программы Makson сделал такой вариант для пробы:
(defun C:knopka () (vl-load-com) (setq cz (vla-item (vla-item (vla-get-toolbars (vla-item (vla-get-menugroups (vlax-get-acad-object)) "ACAD" ) ) "On_Off" ) 0 ) ) (vla-getbitmaps cz 'SmallBitmapName 'BigBitmapName) (if (= SmallBitmapName "on.bmp") ((vla-setbitmaps cz "off.bmp" "off.bmp") (command "_-layer" "_on" "Rastr" "") ) ((vla-setbitmaps cz "on.bmp" "on.bmp") (command "_-layer" "_off" "Rastr" "") ) ) )
Работает, и цвет кнопки изменяется, но завершается с таким сообщением:
Команда: KNOPKA no function definition: nil Аварийное завершение команды! Команда:
Пиктограммы BMP находятся на пути доступа AutoCAD к файлам поддержки.
Блин, у меня тихо съезжает крыша...
Почему же у меня ЛИСП не работает?
АutoCAD 2004, иконки находятся в папке Support.
Что еще забыла? Тулбар с моими личными кнопками называется тулбар2, это я в коде исправила...
Ума не приложу, чего еще макросу не хватает...
> Владимир Громов
В SmallBitmapName возвращается полный путь, поэтому сравнивать нужно только имя
(if (= (strcase(vl-filename-base SmallBitmapName)) "ON")
перекинула кнопку в тулбар1.
НЕ РАБОТАЕТ!!!
Люди, помогите! VVA, выложи полностью свой макрос, который работает, как на картинке. Пожалуйста. А то я туплю, и не могу понять, в каком месте.
Караул!
Я поставила кнопку в конец всей панели "Тулбар1"
И что получается: при нажатии кнопки на ней самой иконка не меняется, а меняется иконка на первой кнопке - это совершенно другой макрос!
> Малявка
Исправь нолик в
(setq cz (vla-item(vla-item (vla-get-toolbars(vla-item(vla-get-menugroups(vlax-get-acad-object)) "ACAD")) "Toolbar1") 0 ))
на номер твоей кнопки по счету -1.
> Makson
Хорошо, исправлю. Только он, злодей (этот макрос) уже уничтожил три мои любимые кнопки. Вместе с макросами. ;(
Код и инструкции выложил здесь
http://dwg.ru/f/showthread.php?p=245832
> Малявка
Как это так? Почему три? Почему с вместе макросами? Когда от тока картинку меняет. Что то вы девушка наговариваете.
> Makson
Я Вас, вьюноша, не виню. Но кнопочки с макросиками исчезли. Честное пионерское. Щас восстанавливаю. Я решила эту мигающую кнопочку на отдельный тулбар поместить. Чтобы не хулиганила.
> VVA
Спасибо.
> VVA
Урра! Заработало! Мальчишки, какие же вы все молодцы! Я эту неделю буду самая счастливая в конторе, и пусть другие ЗАВИДУЮТ!
Чмоки всех вас в разные приятные места.
> Малявка
Надо было сразу делать специальную панель.
> Владимир Громов
Ну, блондинка по натуре, что возьмешь?
Это у меня уже вторая специальная панель.
Первая - та вся в кнопках-макросах с сайта.
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форумы CADUser → Программирование → LISP → Как ЛИСПом поменять цвет текста нажатием кнопки мышки
Форум работает на PunBB, при поддержке Informer Technologies, Inc