Грязный плагин по-прежнему имеет старое значение во время setDependentsDirty().C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Грязный плагин по-прежнему имеет старое значение во время setDependentsDirty().

Сообщение Anonymous »

Когда я изменяю входной плагин, например mFileAttr, setDependentsDirty() вызывается правильно, но значение плагина fileName по-прежнему остается старым значением! Я вижу, что он обновляется только после того, как он проходит метод Compute(). Как я могу получить доступ к новому значению в функции setDependentsDirty(), поскольку оно действительно инициируется обновлением значения плагина?

Код: Выделить всё

MStatus FNode::setDependentsDirty(const MPlug& plug, MPlugArray& plugArray) {
if (plug == mFileAttr)
{
MPlug fileNamePlug(thisMObject(), plug);
MString fileName = fileNamePlug.asString();
}
return MPxNode::setDependentsDirty(plug, plugArray); }
Изменить:
Просто чтобы уточнить: читая само значение плагина, plug.asString(), оно по-прежнему сохраняет старое значение.

Подробнее здесь: https://stackoverflow.com/questions/386 ... dentsdirty
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»