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

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

Как получить значение отступа в конкретной ячейке таблицы

Ответ
Поиск в этой теме
Непрочитано 11.10.2023, 08:33 #1
Как получить значение отступа в конкретной ячейке таблицы
Danil55
 
Регистрация: 14.07.2020
Сообщений: 4

Добрый день!

Не нашел ответа на форуме
Задача в получении значение свойства ячейки "отступ по горизонтали"
Не свойство стиля таблицы (vla-get-HorzCellMargin tblobj), а именно в конкретной ячейке
Т.е. перебираю ячейки в цикле по строкам и колонкам, необходимо считать значение свойства, аналогично (vla-GetCellTextStyle tblobj row col)
Но для свойства "отступ по горизонтали" не нашел такого метода
Прошу помочь с кодом

Миниатюры
Нажмите на изображение для увеличения
Название: Screenshot_2.jpg
Просмотров: 28
Размер:	29.4 Кб
ID:	259216  

Просмотров: 788
 
Непрочитано 11.10.2023, 12:17
#2
kp+

идущий по граблям
 
Регистрация: 26.05.2005
Сообщений: 5,194


https://help.autodesk.com/view/OARX/...7-0F4D51DDCB48

На lisp как-то так (для отступа снизу):
(setq a (vla-getmargin tbl_obj row col acCellMarginBottom))

Или
(setq tblMargin (vlax-invoke-method tbl 'GetMargin row col acCellMarginBottom) )
kp+ вне форума  
 
Автор темы   Непрочитано 11.10.2023, 21:03
#3
Danil55


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


Спасибо, то что нужно!

Еще один варант нашел получения значения отступа по горизонтали, но он конечно не сравним)
Код:
[Выделить все]
 (setq horz_cell (abs (-(car (vlax-safearray->list (vlax-variant-value (vla-GetCellExtents tblobj row col :vlax-false))))(car (vlax-safearray->list (vlax-variant-value (vla-GetCellExtents tblobj row col :vlax-true)))))))
Danil55 вне форума  
 
Непрочитано 11.10.2023, 21:12
#4
Кулик Алексей aka kpblc
Moderator

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


По лисповски твой вариант может выглядеть более забавно ИМХО:
Код:
[Выделить все]
 (abs (apply
       (function -)
       (mapcar
         (function
           (lambda (x)
             (car (vlax-safearray->list (vlax-variant-value (vla-getcellextents tblobj row col x))))
           ) ;_ end of lambda
         ) ;_ end of function
         (list :vlax-false :vlax-true)
       ) ;_ end of mapcar
     ) ;_ end of apply
) ;_ end of abs
----- добавлено через 24 сек. -----
Если что, код не проверял - не до того.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Как получить значение отступа в конкретной ячейке таблицы

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
LISP. Создание поля (field), ссылающегося на текстовое значение ячейки таблицы. skkkk Готовые программы 144 25.07.2024 10:48
Запретить блоку в ячейке таблицы менять цвет Tonic LISP 11 16.08.2021 16:25
В ячейке одной таблицы есть текст, как сделать чтоб этот текст отображался в ячейки другой таблицы? Basily AutoCAD 2 05.02.2017 16:46
Помогите с интересной проблемой о тексте в ячейке таблицы reime AutoCAD 15 22.09.2016 19:10
Как сделать непечатаемым текст в ячейке таблицы в Autocad? Газизов Рафаэль AutoCAD 10 02.09.2014 16:51