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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > создание собственной подсказки

создание собственной подсказки

Ответ
Поиск в этой теме
Непрочитано 16.10.2012, 11:55
создание собственной подсказки
gool
 
Регистрация: 15.11.2007
Сообщений: 52

Как создать подсказку для блока, например, которая будет выводиться при наведении на этот блок? Подобная тема поднималась раньше, но там упоминаются команды note и T2N, а ссылки, где их взять - недоступны. Может, у кого есть?
Спасибо
Просмотров: 18786
 
Непрочитано 23.09.2014, 00:48
#81
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


У меня тоже голый, SP2. Никаких дополнений и довесков, только лиспы и те из автозагрузки удалил.
skkkk вне форума  
 
Непрочитано 23.09.2014, 01:45
#82
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,702
Отправить сообщение для Do$ с помощью Skype™


Вроде бы получилось гасить подсказку по нажатию кнопок мыши и клавиш. Пробуй
Вложения
Тип файла: zip Acad2011x64.zip (4.3 Кб, 25 просмотров)
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic)
Do$ вне форума  
 
Непрочитано 23.09.2014, 03:01
#83
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


Цитата:
Сообщение от Do$ Посмотреть сообщение
у меня фокус с ROLLOVERTIPS не воспроизводится
Чудеса. Всё одинаково, но все по-разному... Ну, я позже смогу проверить на том ноуте, на котором изначально все работало, отпишусь. Может, там еще какая переменная. Или ленточный интерфейс как-то влияет, хотя прямой зависимости я не обнаружил, включив ленту. Сам пользуюсь до сих пор классикой.
Цитата:
Сообщение от Do$ Посмотреть сообщение
Вроде бы получилось гасить подсказку по нажатию кнопок мыши и клавиш
Проверил. Гасится. Но... Нажатие, например, левой кнопки мыши гасит подсказку и всё. Рациональней было бы, чтоб по нажатию левой кнопки начиналась рамка выбора, а по нажатию кнопки с буквой эта буква сразу появлялась в командной строке. В этом смысле для меня предпочтительней предыдущий вариант, поскольку там наше окошко можно спрятать за окном динввода. Как-то неправильным это кажется, но работает чётко, особенно если подобрать правильные координаты окошка и размер окошка динввода.
Уже сколько программ сам понаписал, а до сих пор наивно полагал, что такая простая на первый взгляд функция не должна была вызвать столько проблем, и что в ней будет столько нюансов. Однако.... Виноват. Каюсь. ТЗ было мною составлено плохо . Но я повторюсь, что идеальным мне кажется поведение окошка, возникающего при вводе неверной команды. Только восклицательный знак не обязателен, хотя признаюсь, и его хотелось бы иметь в качестве аргумента и при надобности вызывать окно с ним. Или другим цветом. Красным, например, в случае ошибки. Но это уже, конечно, блажь - удобно, но можно обойтись. Уже вот несколько дней пользуюсь твоим предыдущим вариантом, балдею и вспоминаю тебя добрым словом. Еще раз большое тебе спасибо, Do$!
skkkk вне форума  
 
Непрочитано 23.09.2014, 09:45
#84
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,702
Отправить сообщение для Do$ с помощью Skype™


Цитата:
Сообщение от skkkk Посмотреть сообщение
Проверил. Гасится. Но... Нажатие, например, левой кнопки мыши гасит подсказку и всё. Рациональней было бы, чтоб по нажатию левой кнопки начиналась рамка выбора, а по нажатию кнопки с буквой эта буква сразу появлялась в командной строке.
Ну это легко настраивается. Я почему-то подумал, что так будет удобнее
Цитата:
Сообщение от skkkk Посмотреть сообщение
Только восклицательный знак не обязателен, хотя признаюсь, и его хотелось бы иметь в качестве аргумента и при надобности вызывать окно с ним.
Подумаю над этим.
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic)
Do$ вне форума  
 
Непрочитано 27.09.2014, 01:23
#85
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,702
Отправить сообщение для Do$ с помощью Skype™


Новый вариант функции:
(do$-show-cursor-message message distance imgType offsetX offsetY fontSize fontColorIndex)
message - текст подсказки (обязательный аргумент), строка
distance - длина пробега курсора в единицах чертежа, пока не пропадет подсказка (обязательный аргумент), положительное вещественное число
imgType - тип изображения (необязательный аргумент), целое число:
0 - без изображения (по умолчанию),
1 - "внимание"
2 - "ошибка"
3 - "информация"
offsetX, offsetY - отступы подсказки от курсора по X вправо и по Y вниз соответственно в пикселях (необязательные аргументы), вещественное число. Знаком числа можно управлять положением подсказки относительно курсора. По умолчанию равны 20.
fontSize - высота текста подсказки (необязательный аргумент), вещественное положительное число. Если равно 0,0 - высота текста принимается по умолчанию (из настроек системы наверное).
fontColorIndex - индекс цвета текста подсказки (необязательный аргумент), целое число от 0 до 255 - соответствуют индексированным цветам AutoCAD. Если равно 0 - цвет текста принимается по умолчанию (из настроек системы наверное).

Сильно не тестировал, но, по идее, должно хорошо работать Проверяй.

Лисп для тестов:
Код:
[Выделить все]
  (defun c:cursortest ()
  (setq pt1 (getpoint "\nУкажите первую точку: "))
  (setq pt2 (getpoint pt1 "\nУкажите вторую точку: "))
  (entmakex (list (cons 0 "Line")
		  (cons 10 pt1)
		  (cons 11 pt2)
	    )
  )
  (do$-show-cursor-message "Построена линия" (/ (getvar "viewsize") 2) 0 25.0 -25.0 15.0 178)
)
Вложения
Тип файла: zip Acad2011x64.zip (21.4 Кб, 18 просмотров)
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic)
Do$ вне форума  
 
Непрочитано 28.09.2014, 02:16
#86
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


Do$, просто супер!!! Основательно потестировал - багов не обнаружил. Кроме одного. Если задать вместо строки, например, переменную, которая не определена, Автокад вылетает с фатальной ошибкой. Этого можно избежать, не допуская попадания в аргументы "не строки", меня не парит, это я так, для порядку. А в остальном - все, как я и хотел. Даже больше, чем я ожидал! Отличная идея насчет нескольких вариантов изображений - точно приживется.
Спасибо тебе огромное!!! Долго думал, чего в программе может не хватать - придумал только одно: вывести в аргумент цвет фона подсказки. Это возможно? Больше, по-моему, туда уже ничего не впихнуть
Получилось своеобразное дополнение princ с функцией вывода под курсор. Уже в пяти моих функциях успешно вещает мне результаты проделанной работы
skkkk вне форума  
 
Непрочитано 29.09.2014, 10:13
#87
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,702
Отправить сообщение для Do$ с помощью Skype™


Пожалуйста!
Цитата:
Сообщение от skkkk Посмотреть сообщение
Отличная идея насчет нескольких вариантов изображений - точно приживется.
Ну это не моя идея, то же самое реализовано в стандартных методах вывода сообщений в Windows. Я просто сделал по аналогии.
Цитата:
Сообщение от skkkk Посмотреть сообщение
Если задать вместо строки, например, переменную, которая не определена, Автокад вылетает с фатальной ошибкой.
Цитата:
Сообщение от skkkk Посмотреть сообщение
Долго думал, чего в программе может не хватать - придумал только одно: вывести в аргумент цвет фона подсказки. Это возможно?
Попробую разобраться на досуге.
__________________
Толковый выбор приходит с опытом, а к нему приводит выбор бестолковый. (The Mechanic)
Do$ вне форума  
 
Непрочитано 30.09.2014, 11:05
#88
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


Цитата:
Сообщение от Do$ Посмотреть сообщение
Ну это не моя идея, то же самое реализовано в стандартных методах вывода сообщений в Windows
Но это же ты придумал внедрить это в программу, а не дядюшка Билл. Стало быть, тебе хвала и почет!
skkkk вне форума  
 
Непрочитано 30.09.2014, 14:56
#89
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от skkkk Посмотреть сообщение
Стало быть, тебе хвала и почет!
Славу в карман не положишь...
gomer вне форума  
 
Непрочитано 01.10.2014, 06:06
#90
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


Offtop:
Цитата:
Сообщение от gomer Посмотреть сообщение
Славу в карман не положишь...
Тут точнее подскажет дядюшка Билл
Иной раз осознаешь, что ты во власти живого труднообъяснимого интереса, рождаемого некой кем-то поставленной задачей. Когда понимаешь, что эта задачка тебе по зубам, жадно вгрызаешься в нее, погружаешься в процесс мышления, и вот оно уже решение, вертится где-то на кончике языка... В общем, у меня такое со школы. Кто знает, тот поймет Дополнительно подстегивает то, что эта задача реальна и жизненна, и кому-то это может быть полезным. В таких случаях очень приятно и вполне достаточно (сужу по себе) получить простое спасибо от радостного человека, от такого, каким был я, когда мне мне здесь впервые решили мою задачку. Главное, чтоб это было в кайф, и не заняло, месяцы работ. А вот тогда кто знает, положишь ли или не положишь
skkkk вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > создание собственной подсказки

Размещение рекламы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание собственной панели инструментов к AutoCAD-у Supermax Программирование 43 18.11.2009 12:01
Создание собственной системы координат для растрового изображения зюс AutoCAD 4 06.05.2009 21:52
Создание собственной текстуры и добавление в Revit Scrubber Revit 14 05.02.2009 15:19
создание собственной подписи??? Робин Бобин Разное 36 17.12.2007 17:15
Создание всплывающей подсказки? draft AutoCAD 5 08.01.2007 17:15