Supcan Edit组件


  Supcan提供了一套小型输入组件,包括日期、数值的输入框、下拉富输入框,并能被插件/加载项展示到页面,弥补了纯HTML页面在这些方面交互能力的不足。
  实际上Supcan Edit是从Supcan Freeform中分离出来的: Freeform中的Input控件,使其能单独用于页面。



  1.创建实例
  Supcan Edit组件是通过插件/加载项创建的,所以应该用使用指南 \ 页面语法中叙述的插件/加载项的页面创建语法创建, <Object>中的某几个Param参数规则如下:
<Object ...(略)>
<Param name="CtlName" value="BCV1.Edit">  //固定
<Param name="ZipUrl" value="BCV1.bin">	  //也可以是绝对URL
<Param name="CtlPara" value="bgColor=white; datatype=date; border=client; value=2009.4.28; editmask=YYYY.MM.DD">	//例子
...
  如果页面是直接调用dynaload.js,那么可能就是这样:
insertEdit('AF', 'bgColor=white; datatype=date; border=client; value=2009.4.28; editmask=YYYY.MM.DD')
  CtlPara参数决定了如何在页面上展现Supcan Edit实例,在上面的例子中,参数串中可包含多个子串,子串间以 ";" 分隔。
  子串的名值对的规范请参见FreeForm XML文档规范中的Objects \ Input,以及FreeForm中的Border、isUseContextFont参数.



  2.函数
  Supcan Edit的函数是通过插件/加载项的 func( string funcname, string paras ) 函数间接调用的,Supcan Edit组件的可用funcname如下:
    GetValue
    SetValue
    GetText
    BuildTreeList
    Load
    Filter
    GetHandle
    SelectCell
    SetDroplistProp
  函数使用方法和Supcan Freeform中Input控件非常相似,除了不需要第一个参数(ID参数),其它参数和返回值和Input控件几乎一样,请参见Supcan Freeform组件-函数.
  注:SetDroplistProp函数调用方式稍有不同:参数不是以回车符分隔,而是以等号分隔.
  此外,本组件支持下拉Treelist的“扩展函数”,即通过本组件也能调用下拉Treelist的扩展函数,以及拥有和Treelist、Freeform完全一样的全局函数



  3.事件
  Supcan Edit的OnEvent( id, Event, p1, p2, p3, p4 )事件含义及参数分别如下:
备注1:EditKeydown和EditChar均为在输入框中的键盘事件,EditKeydown能捕获几乎所有键盘动作,包括非字符的回车、Tab等;而EditChar则以输入的字符为主,包括中文.
您可以用全局函数 CancelEvent( ) 去阻止继续执行,就如事件没有发生过那样,但不同的ASCII码,您需要在这二个事件中挑选一个执行CancelEvent( ),具体请在树列表的演示页“12.事件”中去测试;
备注2:1-Ctrl键也按下了; 2-Shift键也按下了; 3-二者一起按下了.