Ошибка при использовании winmessage для переменной вне метода
Так что у меня есть этот код в моем классе внутри пакета приложения. Если я помещаю winmessage внутри метода, у него нет проблем, но когда он за пределами, он говорит, что нуждается в утверждении. Кто-нибудь знает, почему это происходит? Вот мой код:
Часть, в которой возникает ошибка, находится в WinMessage(&description);
class CopyFromProg
method CopyFromProg();
method getProg(&acad_prog As string);
method getDesc(&desc As string);
property string program;
property string description;
end-class;
method CopyFromProg
end-method;
method getProg
/+ &acad_prog as String +/
&program = &acad_prog;
end-method;
method getDesc
/+ &desc as String +/
&description = &desc;
end-method;
WinMessage(&description);
1 ответ
Вы в своем определении класса.
Определение может включать в себя только объявление класса, определения методов и конструкторы.
Показать свой &description
Вы можете сделать следующее для события, например FieldChange:
import TEST_APPPACK:CopyFromProg;
Local TEST_APPPACK:CopyFromProg &test;
&test = create TEST_APPPACK:CopyFromProg();
&test.description = "yeet";
WinMessage(&test.description); /* Popup string "yeet" */
Вы также можете изменить определение класса приложения, включая метод, который будет выводить описание:
class CopyFromProg
method CopyFromProg();
method getProg(&acad_prog As string);
method getDesc(&desc As string);
method showDesc();
property string program;
property string description;
end-class;
method CopyFromProg
end-method;
method getProg
/+ &acad_prog as String +/
&program = &acad_prog;
end-method;
method getDesc
/+ &desc as String +/
&description = &desc;
end-method;
method showDesc
/******** output &description ********/
WinMessage(&description);
end-method;
Тогда в случае вы сможете использовать:
import TEST_APPPACK:CopyFromProg;
Local TEST_APPPACK:CopyFromProg&test;
&test = create TEST_APPPACK:CopyFromProg();
&test.description = "yeet";
&test.showDesc(); /* Popup string "yeet" */