|
Устанавливает свойство объекта JS+ типа массив String, приведенное из типа массив System::String (для приложений С++ Builder) или string (для приложений Delphi).
Синтаксис
int __stdcall JSP_objSetSysStrArr(
| hObj, | prp_cName, | prp_Array, | arr_Size
| );
|
Параметры
|
Параметр
| Тип
| Описание
|
hObj
| size_t
| объект JS+, имеющий свойство типа массив String
|
prp_cName
| char*
| имя свойства типа массив String объекта hObj
|
prp_Array
| System::String*
| устанавливаемый массив свойства prp_cName
|
arr_Size
| long
| количество элементов массива prp_Array
|
|
Возвращаемое значение
JSP_OK (0) в случае успеха либо JSP_ERROR (-1) в противном случае.
------------------------ Приложение C++ Builder ------------------------
JSP_Start("TRIAL","");
JSP_RegAppFun("void","App_tstObjSysStrArr","size_t&,char*");
JSP_RET_void App_tstObjSysStrArr(size_t &hObj,char *prp_cName) { long i,j,n,len; System::String tmp_str,*str_arr;
JSP_objGetArrLen(hObj,prp_cName,len); str_arr=new System::String[len]; JSP_objGetSysStrArr(hObj,prp_cName,str_arr); // Перевернуть массив for (i=0,n=len/2;i<=n;i++) { tmp_str=str_arr[i]; str_arr[i]=str_arr[j=len-i-1]; str_arr[j]=tmp_str; } JSP_objSetSysStrArr(hObj,prp_cName,str_arr,len);
delete [] str_arr; }
------------------------ Скрипт JS+ ------------------------
var str_lst=new Array("раз","два","три"); var tst_obj={ strArray: str_lst };
var val_str=str_lst.toString();
App_tstObjSysStrArr(tst_obj,"strArray");
alert( val_str+"\n-\n"+ tst_obj.strArray.toString() );
------------------------ Вывод скрипта JS+ ------------------------
раз,два,три - три,два,раз
------------------------ Приложение Delphi ------------------------
JSP_Start('TRIAL','User=Delphi');
JSP_RegAppFun('','App_tstObjSysStrArr','size_t&,char*');
procedure App_tstObjSysStrArr(var hObj:Pointer;prp_cName:pAnsiChar) stdcall; var i,len:LongInt; str_arr:array of string; tmp_str:string; begin JSP_objGetArrLen(hObj,prp_cName,len);
SetLength(str_arr,len); JSP_objGetSysStrArr(hObj,prp_cName,@str_arr[0]);
// Перевернуть массив for i:=0 to (len Div 2) do begin tmp_str:=str_arr[i]; str_arr[i]:=str_arr[len-i-1]; str_arr[len-i-1]:=tmp_str; end; JSP_objSetSysStrArr(hObj,prp_cName,@str_arr[0],len); end; exports App_tstObjSysStrArr;
------------------------ Скрипт JS+ ------------------------
var str_lst=new Array("раз","два","три"); var tst_obj={ strArray: str_lst };
var val_str=str_lst.toString();
App_tstObjSysStrArr(tst_obj,"strArray");
alert( val_str+"\n-\n"+ tst_obj.strArray.toString() );
------------------------ Вывод скрипта JS+ ------------------------
раз,два,три - три,два,раз
Совместимость
C++ Builder/Delphi
|
JS+ | Руководство пользователя
|
|
|