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