3DCenter.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Reply to this topicStart new topic
> Путь для пресетов пользователя, как правильно организовать
s_i_d
сообщение 12/09/2011, 16:17
Сообщение #1


Мастер
Иконка группы

Группа: Пользователи
Сообщений: 1 388
Регистрация: 28/04/2005
Из: Питер
Пользователь №: 13 117



задача в том чтобы пользователь сам выбрал папку в сети куда складывать свои присеты без
привязки к майке и ее параметрам
диалог работает так
//global string $PathShablonPreset;
fileBrowserDialog -mode 4 -fileCommand ( "SetReturnedInfo" ) -actionName "Pick Your Folder";
global proc SetReturnedInfo( string $name, string $type )
{
//global string $PathShablonPreset = $name;
print($name+", "+$type);
}

но если я пытаюсь объявить глобальную строку
выдается ошибка
// Error: global string $PathShablonPreset = $name; //
// Error: Initialization of global variable "$PathShablonPreset" requires a constant value. //

может есть какой-то другой способ указать путь где хранятся файлы
Спасибо!

Go to the top of the page
 
+Quote Post
s_i_d
сообщение 13/09/2011, 10:50
Сообщение #2


Мастер
Иконка группы

Группа: Пользователи
Сообщений: 1 388
Регистрация: 28/04/2005
Из: Питер
Пользователь №: 13 117



все оказалось слишком просто ((
global string $PathShablonPreset;
$PathShablonPreset = $name;
объявление переменной и присвоение должно быть в разных строчках

global string $PathShablonPreset;
fileBrowserDialog -mode 4 -fileCommand ( "SetReturnedInfo" ) -actionName "Pick Your Folder";
global proc SetReturnedInfo( string $name, string $type )
{
global string $PathShablonPreset;
$PathShablonPreset = $name;
print($name+", "+$type);
}
print $PathShablonPreset;
Go to the top of the page
 
+Quote Post
svv3d
сообщение 15/09/2011, 10:32
Сообщение #3


Рыцарь форума
Иконка группы

Группа: Пользователи
Сообщений: 2 473
Регистрация: 12/07/2002
Из: Днепропетровск
Пользователь №: 326



если ты тестируешь скрипты в майском скрипт эдиторе, то "закрывай" весь скрипт пустыми фигурными скобками, тогда MAYA автоматом будет, убивать все переменные,в противном случае они, объявляются как глобальные и живут в памяти до перезагрузки... Т.е.
например

запускаем
float $test=10;

результат нормальный.. затем исправляем на

int $test=10;
запускаем и получаем ошибку..

но если делать так. и потом вносить исправления, то никаких ошибок не возникает..

{
float $test=10;
}

Я это к тому, что получить твою ошибку при таком способе отладки в майском скрипт эдиторе, и объявлению и присвоению переменной разными способами... мне не удалось, запускался диалог и выдавал просто ворнинг в сторону файл бровзера smile.gif
Go to the top of the page
 
+Quote Post
Bots
сообщение Системное сообщение






Fast ReplyReply to this topicStart new topic

1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 28/03/2024 - 13:36