How do I read Custom Properties/Attributes from an anonymous object?
I can read the attributes of the object, but not sure how to read the below:
Any help will be greatly appreciated.
Solved! Go to Solution.
Solved by Alexander.Rivilis. Go to Solution.
C# or C++? If C# - you (as usually) created topic in wrong forum. Right forum is: https://forums.autodesk.com/t5/net/bd-p/152
Also no difference between getting custom properties from anonymous and named block references.
Відповідь корисна? Клікніть на "ВПОДОБАЙКУ" цім повідомленням! | Do you find the posts helpful? "LIKE" these posts!
Находите сообщения полезными? Поставьте "НРАВИТСЯ" этим сообщениям!
На ваше запитання відповіли? Натисніть кнопку "ПРИЙНЯТИ РІШЕННЯ" | Have your question been answered successfully? Click "ACCEPT SOLUTION" button.
На ваш вопрос успешно ответили? Нажмите кнопку "УТВЕРДИТЬ РЕШЕНИЕ"
Alexander Rivilis / Александр Ривилис / Олександр Рівіліс
Programmer & Teacher & Helper / Программист - Учитель - Помощник / Програміст - вчитель - помічник
Facebook | Twitter | LinkedIn
Yes @Alexander.Rivilis , I did post it on the .NET forum as well.
My bad, I thought this forum was for C++.
How to access the custom properties for the block references or anonymous blocks in C++ though?
Thank You for your help once again.
@jlobo2 wrote:
How to access the custom properties for the block references or anonymous blocks in C++ though?
Відповідь корисна? Клікніть на "ВПОДОБАЙКУ" цім повідомленням! | Do you find the posts helpful? "LIKE" these posts!
Находите сообщения полезными? Поставьте "НРАВИТСЯ" этим сообщениям!
На ваше запитання відповіли? Натисніть кнопку "ПРИЙНЯТИ РІШЕННЯ" | Have your question been answered successfully? Click "ACCEPT SOLUTION" button.
На ваш вопрос успешно ответили? Нажмите кнопку "УТВЕРДИТЬ РЕШЕНИЕ"
Alexander Rivilis / Александр Ривилис / Олександр Рівіліс
Programmer & Teacher & Helper / Программист - Учитель - Помощник / Програміст - вчитель - помічник
Facebook | Twitter | LinkedIn
@Alexander.Rivilis , How do I set the property value for the block?
I am using the following code, but it does not update the value.
if (wcscmp(blkProp.propertyName().kACharPtr(), L"Visibility1") == 0) { AfxMessageBox(_T("Visibility1 Found")); blkProp.setValue(_T("TEST")); }
Also, how do I access or print this following value in TCHAR?
//Get allowed values for property AcDbEvalVariantArray evalAry; if ((err = blkProp.getAllowedValues(evalAry)) == Acad::eOk) {
if (evalAry.length() >= 1) { AcDbEvalVariant eval = evalAry[1];
// How do I access this value as a TCHAR or string
// to print in the command line?
if (!blkProp.readOnly()) { if ((err = blkProp.setValue(eval)) != Acad::eOk) { acutPrintf(L"\nError setting property value..."); } } } }
Not
AcDbEvalVariant eval = evalAry[1];
but
AcDbEvalVariant eval = evalAry[0];
Відповідь корисна? Клікніть на "ВПОДОБАЙКУ" цім повідомленням! | Do you find the posts helpful? "LIKE" these posts!
Находите сообщения полезными? Поставьте "НРАВИТСЯ" этим сообщениям!
На ваше запитання відповіли? Натисніть кнопку "ПРИЙНЯТИ РІШЕННЯ" | Have your question been answered successfully? Click "ACCEPT SOLUTION" button.
На ваш вопрос успешно ответили? Нажмите кнопку "УТВЕРДИТЬ РЕШЕНИЕ"
Alexander Rivilis / Александр Ривилис / Олександр Рівіліс
Programmer & Teacher & Helper / Программист - Учитель - Помощник / Програміст - вчитель - помічник
Facebook | Twitter | LinkedIn
Ok. I am getting a hang of it now. Basically we are accessing from a set of pre-defined objects and modifying the custom properties to dynamically change it.
@Alexander.Rivilis am I on the right track?
Also, how do I access the text value of the property?
if (wcscmp(blkProp.propertyName().kACharPtr(), L"Visibility1") == 0) { AfxMessageBox(_T("Visibility1 Found"));
// How to display the value as text? AfxMessageBox( blkProp.value() ); blkProp.setValue(_T("B1")); }
@Alexander.Rivilis Nevermind - I got it working through the code in C#.NET
Thanks a lot once again for your help. I really appreciate it.
As far as AcDbEvalVariant is derived from struct resbuf, you can use function dxfToStr or printResbufChain (which defined in ObjectARX SDK samples\database\ARXDBG\AcadUtils\ArxDbgRbList.cpp) to convert AcDbEvalVariant to CString
Відповідь корисна? Клікніть на "ВПОДОБАЙКУ" цім повідомленням! | Do you find the posts helpful? "LIKE" these posts!
Находите сообщения полезными? Поставьте "НРАВИТСЯ" этим сообщениям!
На ваше запитання відповіли? Натисніть кнопку "ПРИЙНЯТИ РІШЕННЯ" | Have your question been answered successfully? Click "ACCEPT SOLUTION" button.
На ваш вопрос успешно ответили? Нажмите кнопку "УТВЕРДИТЬ РЕШЕНИЕ"
Alexander Rivilis / Александр Ривилис / Олександр Рівіліс
Programmer & Teacher & Helper / Программист - Учитель - Помощник / Програміст - вчитель - помічник
Facebook | Twitter | LinkedIn
Can't find what you're looking for? Ask the community or share your knowledge.