2.函数
分类 | 函数名 | 用途 |
---|---|---|
基本 | Build | 根据XML描述文件创建Freeform |
Load(含义1) | 加载数据 | |
BindAsMaster | 共享Treelist加载的XML/JSON数据 | |
GetProp | 取得属性 | |
SetProp | 更改属性 | |
GetHandle | 取得Freeform或其它内部对象的句柄 | |
Recover | 将数据恢复到输入前的初始状态 | |
GetObjectId | 取得第n个对象(Object)的ID | |
GetObjectIds | 取得全部或部分对象(Object)的ID | |
AddObject | 动态创建Object | |
DeleteObject | 动态删除Object | |
Object | GetObjectType | 取得某对象的类型 |
GetObjectProp(用途1) | 取得某对象的属性 | |
SetObjectProp(用途1) | 更改某对象的属性 | |
tableLayout | GetObjectProp(用途2) | 取得某TableLayout中某行(TR)、某列(Col)的属性 |
SetObjectProp(用途2) | 更改某TableLayout中某行(TR)、某列(Col)的属性 | |
下拉资源 | AddDroplist | 增加下拉字典资源 |
SetDroplistProp | 更改下拉内容属性 | |
Input控件 | GetValue | 取得某Input控件的值 |
SetValue | 置某Input控件的值 | |
GetText | 取得某控件的显示的串 | |
SetText | 置某控件的显示文字 | |
SetValueText | 同时设定value-text键值对 | |
SelectCell | 切换焦点 | |
下拉List 的Input控件 | GetDroplistIndex | 取得某下拉List的当前选中行顺序号 |
SetDroplistIndex | 选中下拉List中的某行 | |
下拉Treelist 的Input控件 | Refresh(用途1) | 刷新某下拉Input控件的Treelist |
Load(含义2) | 为某下拉Input控件的Treelist加载数据 | |
Filter | 过滤某下拉Input控件的Treelist | |
BuildTreelist | 重新创建某下拉Input控件的Treelist | |
CloseDropdown | 关闭正处在弹出状态的下拉 | |
Upload(文件上传) 的Input控件 | SetFiles | 限制上传文件个数 |
SetFileTypes | 限制文件类型 | |
SetFileMaxKb | 限制单个文件长度 | |
SetPictureMaxSize | 限制图片文件尺寸 | |
GetFiles | 取得文件个数 | |
GetFilename | 取得文件名 | |
GetFileType | 取得文件的扩展名 | |
GetFileSize | 取得文件的长度 | |
GetPictureWidth | 取得图片文件的宽度 | |
GetPictureHeight | 取得图片文件的高度 | |
GetFileBase64 | 取得文件的Base64串, 用于页面自行上传 | |
fptUpload | Ftp方式上传文件 | |
httpUpload | 以Http PUT方式上传文件 | |
httpPost | 以Http POST方式将文件内容发给服务器 | |
CancelUpload | 中断上传,仅用于以Http POST方式上传、并且是分块、异步的场合的 | |
GetHttpPostResponse | 取得上次执行HttpPost后的服务器返回串 | |
AddFile | 增加一个本地文件 | |
OpenFileDialog | 打开文件选择对话框,相当于模拟点击右侧小按钮 | |
Empty | 清空选中的文件, 以便再次使用 | |
Toolbar (工具条) | BindMenu | 绑定工具条和菜单资源 |
动态菜单按钮 的Input控件 | PopupMenu | 弹出下拉菜单,用于动态菜单按钮 |
菜单(Menus)资源 | SetMenu | 重构某菜单 |
DeleteMenuItem | 删除某菜单中的某个菜单项 | |
GetMenuItemProp | 取得某菜单中的某个菜单项的属性 | |
SetMenuItemProp | 更改某菜单中的某个菜单项的属性 | |
分页器(Pager) | BindPager | 分页器和Treelist(或报表数据源)绑定 |
GetPages | 取得总页数 | |
GetCurrentPage | 取得当前页 | |
GotoPage | 切换当前页 | |
Refresh(用途2) | 刷新Treelist | |
TimerRoundPage | 启动内部定时器,自动滚动跳转到下一页 | |
选项卡(Tab) | GetTabCount | 获得选项卡中页签数量 |
GetTabIds | 获得选项卡中各页签的Id,逗号分隔 | |
SetCurSel | 切换选项卡当前页签 | |
GetCurSel | 获得选项卡中当前页签的顺序号 | |
GetCurSelId | 获得选项卡中当前页签的Id | |
DeleteTab | 删除选项卡中的某个页签 | |
InsertTab | 插入新页签 | |
GetObjectProp(用途3) | 取得选项卡中某页签的属性 | |
SetObjectProp(用途3) | 更改选项卡中某页签的属性 | |
提交 | Validate | 验证 |
GetChangedXML | 取得用于提交的XML串 | |
GetChanged | 判断是否被修改过 | |
ResetChanged | 合并修改内容 | |
SetAsNewRow | 强制设置新增、修改的标识 | |
IsNewRow | 是否新增行 | |
图片流(ImageFlow)控件 | Locate | 将中心位置定位到某幅图 |
Scroll | 发送一个滚动消息 | |
GetImages | 取得图片数 | |
GetImageProp | 取得某个图片的属性值(包括自定义属性) | |
GetImagePropById | 按Id取得某个图片的属性值(包括自定义属性) | |
其它 | AddPath | 动态创建Path |
Export | 取得XML格式的数据 | |
AddHotKey | 增设快捷键 |
Build | 根据XML描述文件创建Freeform | ![]() |
参数 | XML所在的URL(相对或绝对),或者直接就是XML大串 | |
返回值 | 1 - 成功; 空串 - 失败(将自动弹出失败页面) |
BindAsMaster | 共享Treelist加载的XML/JSON数据 | ![]() ![]() |
参数1 | Treelist的句柄 | |
参数2 | 需分享的XML节点名 | |
返回值 | (无) |
GetProp | 取得 XML文档中的 Properties 和 Properties \ BackGround 中的属性的值 | ![]() |
参数 | 属性名, 包括Properties中的自定义属性 | |
返回值 | 属性的值 |
SetProp | 更改 XML文档中的 Properties 和 Properties \ BackGround 中的属性的值 | ![]() ![]() |
参数1 | 属性名, 包括Properties中的自定义属性 | |
参数2 | 属性的值 | |
返回值 | (无) |
Recover | 将数据恢复到输入前的初始状态 | ![]() |
参数 | (无) | |
返回值 | (无) | |
备注 | 1.如果执行了Load( ), 那么这个“初始状态”就变成了Load( )后数据的状态; 2.如果执行了ResetChanged( ), 那么这个“初始状态”就变成了当前数据的状态; |
GetObjectId | 或GetObjId, 取得第n个对象(Object)的ID | ![]() |
参数 | 顺序号,从0开始计数 备注:没有ID的Object将不参与计数 | |
返回值 | ID,空串表示已经到达末尾 |
GetObjectIds | 或GetObjIds, 取得全部或部分对象(Object)的ID | ![]() |
参数 | 可选,可以是某种对象类型,例如 input、text、rect等等. 默认是所有类型 | |
返回值 | 逗号分隔的ID |
AddObject | 动态创建Object | ![]() ![]() |
参数1 | Object的类型,如Input、Line、image | |
参数2 | 属性串,例如"x=20;y=33;type=button;text=确认" | |
参数3 | 可选,表示插入位置,可以是插入处的id值,默认为空(表示从末尾添加) | |
返回值 | (无) |
DeleteObject | 动态删除Object | ![]() ![]() |
参数 | Object的ID,可以包含多个ID一起删除,相互以逗号分隔 | |
返回值 | (无) | |
备注 | TableLayout是无法被删除的 |
GetObjectType | 或GetObjType, 取得某对象的类型 | ![]() |
参数 | Object的ID | |
返回值 | 如Input、Text、Line、Image等 |
GetObjectProp(用途1) | 或GetObjProp, 取得XML中某Object(如Input、Line、image等)的属性, 也可以是自定义属性 | ![]() |
参数1 | Object的ID | |
参数2 | 属性名,请参见Freeform的XML文件文档规范 | |
返回值 | 属性的值 |
GetObjectProp(用途2) | 或GetObjProp, 取得XML中某TableLayout的某行(TR)、某列(Col)的属性 | ![]() |
参数1 | TableLayout的ID | |
参数2 | 行或列的ID,如果是行,ID前必须加"TR.";如果是列,ID前必须加"col." | |
参数3 | 属性名,有visible、height(仅用于行)、width(仅用于列) | |
返回值 | 属性的值 |
GetValue | 取得某Input控件的值 | ![]() ![]() |
参数1 | Input控件的ID | |
参数2 | 可选,true/false, true表示取修改前的原始内容(即 Load 的内容), false表示取当前内容,默认是false | |
返回值 | 串 | |
备注 | 如果是RadioButton,参数可以是GroupID,这样返回值就是所选RadioButton的SelectValue. |
SetValue | 置某Input控件的值 | ![]() ![]() |
参数1 | Input控件的ID | |
参数2 | 值串 | |
返回值 | (无) | |
备注 | 如果是RadioButton,参数1可以是GroupID,参数2则为所需的SelectValue. 严重警告:参数之间不得留有多余空格,否则结果将不是你所期望的,例如: AF.func("SetValue", "city \r\n "+ vCity); //执行结果是左侧有多余空格 |
GetText | 取得某控件的显示的串 | ![]() |
参数 | Input控件的ID | |
返回值 | 串 |
SetText | 置某控件的显示文字 | ![]() |
参数1 | Input控件的ID | |
参数2 | 串 | |
返回值 | (无) | |
备注 | 常用于和Droplist绑定的EditWithButton的显示值,否则和SetValue( )效果一样. |
SetValueText | 增加一个value-text键值对,并应用到当前Input,用于设置了textId的input | ![]() |
参数1 | Input控件的ID | |
参数2 | Value串 | |
参数3 | Text串 | |
返回值 | (无) | |
备注 | 仅用于Text、Edit、EditWithButton. |
SelectCell | 切换焦点 | ![]() ![]() |
参数 | id,如果id为空则自动取第一个可编辑的id | |
返回值 | 1-成功, 0-失败 |
GetDroplistIndex | 取得某下拉List的当前选中行顺序号 | ![]() |
参数 | Input控件的ID | |
返回值 | 下拉列表的当前选中行, 从0开始计数 | |
备注 | 一般用于非排序的下拉List |
SetDroplistIndex | 选中下拉List中的某行 | ![]() |
参数1 | Input控件的ID | |
参数2 | 行号(下拉列表中的顺序号, 从0开始计数) | |
返回值 | 1 / 0 - 成功 / 失败 | |
备注 | 一般用于非排序的下拉List |
Refresh(用途1) | 刷新某下拉Input控件的Treelist | ![]() |
参数 | Input控件的ID | |
返回值 | (无) |
Load(含义2) | 为某下拉Input控件的Treelist加载数据 | ![]() |
参数1 | Input控件的ID | |
参数2 | 数据的URL | |
返回值 | (无) |
Filter | 过滤某下拉Input控件的Treelist | ![]() ![]() |
参数1 | Input控件的ID | |
参数2 | 过滤表达式, 请参见“公共内容\表达式” | |
返回值 | (无) |
BuildTreelist | 重新创建某下拉Input控件的Treelist | ![]() ![]() |
参数1 | Input控件的ID | |
参数2 | URL | |
返回值 | (无) |
CloseDropdown | 关闭正处在弹出状态的下拉 | ![]() |
参数 | (无) | |
返回值 | 被关闭的Input控件的ID, 空串表示当前没有弹出的下拉 | |
备注 | 也可用于 DropList |
SetFiles | 限制上传文件个数 | ![]() |
参数1 | Input控件的ID | |
参数2 | 数字,0表示无限制 | |
返回值 | (无) |
SetFileTypes | 限制文件类型 | ![]() |
参数1 | Input控件的ID | |
参数2 | 为文件后缀,后缀间以逗号分隔,如"bmp,jpg,png"。 后缀也可以是星号(*),例如"bmp,jpg, *",带星号表示允许选任何文件,前面的后缀只是起引导作用. | |
返回值 | (无) |
SetFileMaxKb | 限制单个文件长度 | ![]() |
参数1 | Input控件的ID | |
参数2 | 数字,单位为KB,0表示不限制 | |
返回值 | (无) |
SetPictureMaxSize | 限制图片文件尺寸 | ![]() |
参数1 | Input控件的ID | |
参数2 | 2个数字,以逗号分隔,分别表示横向/纵向的像素数,0表示不限制. 备注:只能辨认后缀是BMP、JPG、PNG、GIF、TIF的图片文件. | |
返回值 | (无) |
GetFiles | 取得文件个数 | ![]() |
参数 | Input控件的ID | |
返回值 | 文件数 |
GetFilename | 取得文件名 | ![]() |
参数1 | Input控件的ID | |
参数2 | 顺序号,从0开始计数 | |
返回值 | 全文件名,空串表示顺序号已超出范围 |
GetFileType | 取得文件的扩展名 | ![]() |
参数1 | Input控件的ID | |
参数2 | 顺序号,从0开始计数, 或者干脆就是全文件名 | |
返回值 | 文件名的后缀 |
GetFileSize | 取得文件的长度 | ![]() |
参数1 | Input控件的ID | |
参数2 | 顺序号,从0开始计数, 或者干脆就是全文件名 | |
返回值 | 整数,单位:kb |
GetPictureWidth | 取得图片文件的宽度 | ![]() |
参数1 | Input控件的ID | |
参数2 | 顺序号,从0开始计数, 或者干脆就是全文件名 | |
返回值 | 整数,单位:像素 |
GetPictureHeight | 取得图片文件的高度 | ![]() |
参数1 | Input控件的ID | |
参数2 | 顺序号,从0开始计数, 或者干脆就是全文件名 | |
返回值 | 整数,单位:像素 |
GetFileBase64 | 取得文件的Base64串, 用于页面自行上传 | ![]() |
参数1 | Input控件的ID | |
参数2 | 顺序号,从0开始计数, 或者干脆就是全文件名 备注:如果参数是全文件名,那么该文件可以是任何本地文件. | |
返回值 | Base64大串 |
GetHttpPostResponse | 取得上次执行HttpPost后的服务器返回串 | ![]() |
参数 | Input控件的ID | |
返回值 | 串,服务器的 response | |
备注 | 1.仅限于同步的httpPost; 如果是分块上传,则返回最后一次的服务器response |
AddFile | 增加一个本地文件 | ![]() |
参数1 | Input控件的ID | |
参数2 | 全文件名 | |
返回值 | 1/0 - 成功/失败, 失败原因是文件不存在 |
OpenFileDialog | 打开文件选择对话框,相当于模拟点击右侧小按钮 | ![]() |
参数 | Input控件的ID | |
返回值 | 1/0 - 对话框确认/取消 |
Empty | 清空选中的文件, 以便再次使用 | ![]() |
参数1 | Input控件的ID | |
参数2 | 可选,数字,为对话框中的文件的顺序号(从0开始计数),表示仅仅剔除其中的某个文件,其它不变 | |
返回值 | (无) |
BindMenu | 动态将 <menus> 资源下的某个菜单 和 工具条绑定 | ![]() |
参数1 | Toolbar的ID | |
参数2 | Menu的ID | |
返回值 | (无) | |
备注 | 其实用 SetObjectProp 函数也完全能实现本功能 |
PopupMenu | 弹出下拉菜单,用于动态菜单按钮 | ![]() ![]() |
参数 | (无) | |
返回值 | (无) |
DeleteMenuItem | 删除某菜单中的某个菜单项 | ![]() |
参数1 | Menu的ID, 如果不确定,允许为空串 | |
参数2 | 菜单项的ID, 即某个 item 的 id | |
返回值 | (无) |
GetMenuItemProp | 取得某菜单中的某个菜单项的属性 | ![]() |
参数1 | Menu的ID, 如果不确定,允许为空串 | |
参数2 | 菜单项的ID, 即某个 item 的 id | |
参数3 | 属性名,支持 icon(或image)、text、detail、enabled、checked, 或者是其它自定义属性 | |
返回值 | 属性的内容 |
BindPager | 分页器和Treelist(或报表数据源)绑定 | ![]() ![]() |
参数1 | Treelist的句柄,或报表中数据源的句柄 | |
参数2 | Pager的ID | |
参数3 | 可选,格式为 CurrentPage=[?], 表示将当前页定位到某页(从0开始计数) | |
返回值 | (无) |
GetPages | 取得总页数 | ![]() |
参数 | 分页器的ID | |
返回值 | 页数 |
GetCurrentPage | 取得当前页 | ![]() |
参数 | 分页器的ID | |
返回值 | 页号,从0开始计数 |
GotoPage | 切换当前页 | ![]() |
参数1 | 分页器的ID | |
参数2 | 页号,从0开始计数 | |
返回值 | 1/0 - 成功/失败 |
Refresh(用途2) | 刷新Treelist、重新获得总行数 | ![]() |
参数 | Pager的ID | |
返回值 | (无) |
TimerRoundPage | 启动内部定时器,自动滚动跳转到下一页 | ![]() |
参数1 | 分页器的ID | |
参数2 | 0 - 终止定时器; 大于100的整数 - 间隔,单位是毫秒 | |
返回值 | 1/0 - 成功/失败 | |
示例 | AF.func("timerRoundPage", "IDPage \r\n 3000"); |
GetTabCount | 获得选项卡中页签数量 | ![]() ![]() |
参数 | 选项卡的Id | |
返回值 | 数量 |
GetTabIds | 获得选项卡中各页签的Id,逗号分隔 | ![]() |
参数 | 选项卡的Id | |
返回值 | 串 |
SetCurSel | 切换选项卡当前页签 | ![]() ![]() |
参数1 | 选项卡的Id | |
参数2 | 顺序号 | |
返回值 | 1/0 - 成功/失败 |
GetCurSel | 获得选项卡中当前页签的顺序号 | ![]() |
参数 | 选项卡的Id | |
返回值 | 顺序号 |
GetCurSelId | 获得选项卡中当前页签的Id | ![]() |
参数 | 选项卡的Id | |
返回值 | Id值 |
DeleteTab | 删除选项卡中的某个页签 | ![]() |
参数1 | 选项卡的Id | |
参数2 | 页签的Id,或顺序号(从0开始计数) | |
返回值 | (无) |
SetObjectProp(用途3) | 更改选项卡中某页签的属性 | ![]() |
参数1 | 选项卡的ID和页签的ID,以小数点分隔, 例如 "Tab1.t1" | |
参数2 | 属性名,见上面的GetObjectProp函数,但 id 和 type 是不能被设置的. | |
参数3 | 内容 | |
返回值 | 1/0 - 成功/失败 |
GetChangedXML | 调用Validate( )验证,并生成用于提交的XML串 | ![]() ![]() |
参数 | 可选,可以有: level - 级别,有0(默认,取得所有Input的当前内容)、1(只取得修改过的Input的内容、原始内容)、2(取得所有Input的内容、原始内容); returnFormat - 本函数返回串的格式, xml/json, 默认是xml; DateFormat - 日期的格式,默认是'%Y.%m.%d',可参见公共内容中now( )函数的参数 DateTimeFormat - 日期时间的格式,默认是'%Y.%m.%d %H:%M:%S',可参见公共内容中now( )函数的参数; isExecuteValidations - 是否执行XML描述文件的 <Validations> 中的验证,默认是true. include - 其它Freeform的句柄,将它也包含进来. 若有多个句柄, 则以逗号分隔. includeCol / excludeCol - 仅包含某些列/不包含某些列,二者可选其一,表示列的范围. 列名之间以逗号分隔。默认是空串,表示提交所有列; absIncludeCol - 始终包含某些列,不管其列数据有没有被修改过. 仅用于Level=1; | |
返回值 | 正常情况下是一个XML或JSON串. 如果串仅为"0",表示未通过验证,且自动弹出错误的对话框. | |
备注 | 参与生成XML的Object的条件为: 1.可输入的对象(Input),且ID有效(不为空、不以$开头); 2.IsBindingCol=true 的 Text 和 Image 对象,且ID有效(不为空、不以$开头); | |
示例 | 示例一: AF.func("GetChangedXML", "level=1;dateFormat=%Y-%m-%d;dateTimeFormat=%Y-%m-%d %H:%M:%S"); 示例二: var h2 = AForm2.func("GetHandle", ""); var h3 = AForm3.func("GetHandle", ""); AF.func("GetChangedXML", "level=1; include=" +h2+ "," +h3); |
ResetChanged | 合并修改内容,清除Input的修改标记. | ![]() |
参数 | (无) | |
返回值 | (无) |
SetAsNewRow | 强制设置新增、修改的标识 | ![]() |
参数 | 可选,true/false - 是/否, 默认true | |
返回值 | (无) | |
备注 | 用于生成GetChangedXML( )函数的XML. 注:通过Load( )加载后,就不是新增行了. |
IsNewRow | 是否新增行 | ![]() |
参数 | (无) | |
返回值 | 1/0 - 是/否 | |
备注 | 用于生成GetChangedXML( )函数的XML. 注:通过Load( )加载后,就不是新增行了. |
Locate | 将中心位置定位到某幅图 | ![]() |
参数1 | id, 或顺序号 | |
参数2 | 可选,true/false, true表示参数1是id,false表示参数1是顺序号(从0开始计数),默认是true. | |
返回值 | (无) |
Scroll | 发送一个滚动消息 | ![]() ![]() |
参数 | 速率, -150至150之间,小于0表示向左滚动. | |
返回值 | (无) |
GetImages | 取得图片总数 | ![]() |
参数 | ImageFlow 的 Id | |
返回值 | 数量 |
GetImageProp | 取得某个图片的属性(包括自定义属性) | ![]() ![]() |
参数 | ImageFlow 的 Id | |
参数 | 图片的顺序号(从0开始计数) | |
参数 | 属性, 可以是 Id, src(或URL), tip(或Text),或其它自定义属性 | |
返回值 | 属性的值 |
GetImagePropById | 按图片的Id取得某个图片的属性(包括自定义属性) | ![]() ![]() |
参数 | ImageFlow 的 Id | |
参数 | 图片的 Id | |
参数 | 属性, 可以是 src(或URL), tip(或Text),或其它自定义属性 | |
返回值 | 属性的值 |
AddPath | 动态创建Path | ![]() ![]() |
参数1 | ID | |
参数2 | XML串 | |
返回值 | (无) |