JS+
Усиленный язык сценариев для Windows
с возможностью встраивания
в ваши приложения
О языке JS+ Справочник Скачать JS+ DLL
Контакты
СПРАВОЧНИК ПО ЯЗЫКУ JS+ Содержание

JSP_objGetObjVal

- функция JS+ DLL
Функции JS+ DLL
Возвращает указанное свойство объекта JS+, имеющее тип Object, приведенное к типу size_t (для приложений С++) или Pointer (для приложений Delphi).
Синтаксис
int __stdcall JSP_objGetObjVal(
  hObj,
  prp_cName,
  prp_Value
);

Параметры
Параметр Тип Описание
hObj size_t объект JS+, имеющий свойство типа Object
prp_cName char* имя свойства типа Object объекта hObj
prp_Value size_t& возвращаемое значение свойства prp_cName
Возвращаемое значение
JSP_OK (0) в случае успеха либо JSP_ERROR (-1) в противном случае.
Пример (C++ Builder)
------------------------
 Приложение C++ Builder
------------------------

JSP_Start("TRIAL","");

JSP_RegAppFun("void","App_tstObjObj","size_t&,char*");

JSP_RET_void App_tstObjObj(size_t& hObj,char* prp_cName)
{
  int int_val;
  bool bln_val;
  WCHAR str_val[100];
  size_t obj;

  JSP_objGetObjVal(hObj,prp_cName,obj);

  JSP_objGetBlnVal(obj,"objBln",bln_val);
  JSP_objGetIntVal(obj,"objInt",int_val);
  JSP_objGetWCStr (obj,"objStr",str_val);
  _wcsrev(str_val);

  JSP_objSetBlnVal(obj,"objBln",!bln_val);
  JSP_objSetIntVal(obj,"objInt",int_val*2);
  JSP_objSetWCStr (obj,"objStr",str_val);
}

------------------------
 Скрипт JS+
------------------------

var tst_obj={
  objValue: {
    objBln: false,
    objInt: 100,
    objStr: "A123я"
  }
};
var val_str=
tst_obj.objValue.objBln.toString()+" "+
tst_obj.objValue.objInt.toString()+" "+
tst_obj.objValue.objStr;

App_tstObjObj(tst_obj,"objValue");

alert(
  val_str+"\n-\n"+
  tst_obj.objValue.objBln.toString()+" "+
  tst_obj.objValue.objInt.toString()+" "+
  tst_obj.objValue.objStr
);

------------------------
 Вывод скрипта JS+
------------------------

false 100 A123я
-
true 200 я321A
Пример (Delphi)
------------------------
 Приложение Delphi
------------------------

uses
AnsiStrings// ReverseString()

JSP_Start('TRIAL','User=Delphi');

JSP_RegAppFun('','App_tstObjObj','size_t&,char*');

procedure App_tstObjObj(var hObj:Pointer;prp_cName:pAnsiChar) stdcall;
var
  obj:Pointer;
  bln_val:boolean;
  int_val:integer;
  str_val:WideString;
begin
  JSP_objGetObjVal(hObj,prp_cName,obj);

  JSP_objGetBlnVal (obj,'objBln',bln_val);
  JSP_objGetIntVal (obj,'objInt',int_val);
  JSP_objGetWideStr(obj,'objStr',@str_val);

  JSP_objSetBlnVal (obj,'objBln',not bln_val);
  JSP_objSetIntVal (obj,'objInt',int_val*2);
  JSP_objSetWideStr(obj,'objStr',ReverseString(str_val));
end;
exports App_tstObjObj;

------------------------
 Скрипт JS+
------------------------

var tst_obj={
  objValue: {
    objBln: false,
    objInt: 100,
    objStr: "A123я"
  }
};
var val_str=
tst_obj.objValue.objBln.toString()+" "+
tst_obj.objValue.objInt.toString()+" "+
tst_obj.objValue.objStr;

App_tstObjObj(tst_obj,"objValue");

alert(
  val_str+"\n-\n"+
  tst_obj.objValue.objBln.toString()+" "+
  tst_obj.objValue.objInt.toString()+" "+
  tst_obj.objValue.objStr
);

------------------------
 Вывод скрипта JS+
------------------------

false 100 A123я
-
true 200 я321A
Совместимость
C++ Builder/Delphi/Visual C++
JS+Руководство пользователя
Адрес этой страницы: http://jsplus.ru/MANUAL/JSPlus/EmbedApp/Function/JSP_objGetObjVal.htm
© 2024,