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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Помогите никак немогу найти какие значения требуются для работы функций типа VLA- в частности VLA-SetFormula???

Помогите никак немогу найти какие значения требуются для работы функций типа VLA- в частности VLA-SetFormula???

Ответ
Поиск в этой теме
Непрочитано 23.04.2013, 16:16 #1
Помогите никак немогу найти какие значения требуются для работы функций типа VLA- в частности VLA-SetFormula???
sbmyhome
 
Регистрация: 23.04.2013
Сообщений: 3

Господа!!! Помогите никак немогу найти какие значения требуются для работы функций типа VLA- в частности VLA-SetFormula??? В справочнике Полищук Н.Н. её нет а в дамфе на обьект есть как поддерживаемый метод. Может ктото тоже голову ломал над этим???
Просмотров: 3961
 
Непрочитано 23.04.2013, 17:04
#2
Кулик Алексей aka kpblc
Moderator

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


Из справки:
Цитата:
SetFormula Method
Set a cell's formula.
Signature
Код:
[Выделить все]
object.SetFormula nRow, nCol, nContent, pszFormula
Object : Table. The object this method applies to.
nRow : Integer; Input-only. The value of the row.
nCol : Integer; Input-only. The value of the column.
nContent : Integer; Input-only. The value of the content.
pszFormula : String; Input-only. The new formula.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 23.04.2013, 17:11
#3
sbmyhome


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


Спасибо буду разбираться. Если можно то ещё вопрос почему автолисп пишет что метод vla-SelectOnScreen неизвестен??? и ещё а где справку взять всё перерыл???
sbmyhome вне форума  
 
Непрочитано 23.04.2013, 17:28
#4
Кулик Алексей aka kpblc
Moderator

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


После подгрузки (vl-load-com) метод становится доступным.
Цитата:
Сообщение от sbmyhome Посмотреть сообщение
и ещё а где справку взять
Вопрос в версии AutoCAD. Если до 2009 включительно, либо 2014 - там такая справка встроена (ввел ключевое слово, нажимаешь Ctrl + F1 - получаешь справку). Если нет - то ее придется искать (сейчас у меня нет возможности найти и показать ссылку)
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 23.04.2013, 17:40
#5
sbmyhome


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


Ещё раз спасибо а функция всё равно неработает. у меня 2013 стоит.
sbmyhome вне форума  
 
Непрочитано 23.04.2013, 21:04
#6
gomer

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


Цитата:
Сообщение от sbmyhome Посмотреть сообщение
функция всё равно неработает
покажи код
gomer вне форума  
 
Непрочитано 24.06.2015, 18:58
#7
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Хоть и прошло уже достаточно времени, однако вопрос остался. Во многих источниках приводится описание этого метода, но НИГДЕ нет примеров.на AutoLisp.
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Из справки:
Цитата:
SetFormula Method
Set a cell's formula.
Signature
Код:
[Выделить все]

object.SetFormula nRow, nCol, nContent, pszFormula

Object : Table. The object this method applies to.
nRow : Integer; Input-only. The value of the row.
nCol : Integer; Input-only. The value of the column.
nContent : Integer; Input-only. The value of the content.
pszFormula : String; Input-only. The new formula.
Не могли бы опытные товарищи расшифровать эти параметры и привести пример использования этого метода?
Profan вне форума  
 
Непрочитано 24.06.2015, 21:39
#8
Кулик Алексей aka kpblc
Moderator

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


Если tbl - указатель на таблицу, то
Код:
[Выделить все]
 (vla-setFormula tbl 2 2 0 "=(a3+b3)")
Нумерация строк и столбцов начинается с 0. Что означает 0 - не знаю. Но в 2016 срабатывает корректно.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 25.06.2015, 07:33
#9
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Похоже, что этот 0 и есть nContent. Я как раз и не знал, что на это место написать.
В 2013 тоже сработало. И вот так сработало (без скобок):
Код:
[Выделить все]
(vla-setFormula tbl 2 3 0 "=B3+C3")
Спасибо, Алексей.

----- добавлено через ~11 мин. -----
По аналогии:
GetFormula Method (ActiveX)
RetVal = object.GetFormula(nRow, nCol, nContent)

Пример:
Код:
[Выделить все]
(setq tbl (vlax-ename->vla-object (car (entsel))))
(vla-getFormula tbl 2 12 0)
"(I3+H3*(D3/1000)+(H3/1)*(G3*(D3/1000)))"

Последний раз редактировалось Profan, 25.06.2015 в 07:49.
Profan вне форума  
 
Непрочитано 25.06.2015, 09:07
#10
Кулик Алексей aka kpblc
Moderator

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


Так я сначала загнал в таблицу формулу, потом через vla-getformula получил результат, и проверил через vla-setformula
ПО поводу "0": понятно, что это nContent. Скорее всего, это какая-то константа типа aclnwtbyblock. Но вычислить ее наименование я не смог.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Помогите никак немогу найти какие значения требуются для работы функций типа VLA- в частности VLA-SetFormula???



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Какой язык перспективен для инженера-конструктора с условием The_Mercy_Seat Программирование 705 17.03.2021 14:19
Разрешение на разработку ППРк allexandk Технология и организация строительства 4 20.03.2012 17:50