首页 > 代码库 > 使用 IntraWeb (28) - 基本控件之 TIWTemplateProcessorHTML、TIWLayoutMgrHTML、TIWLayoutMgrForm

使用 IntraWeb (28) - 基本控件之 TIWTemplateProcessorHTML、TIWLayoutMgrHTML、TIWLayoutMgrForm


TIWTemplateProcessorHTML //使用外部的 html 文件做模板TIWLayoutMgrHTML         //直接输入 Html 文本做模板TIWLayoutMgrForm         //这应该只是内部使用的东西, 对用户没有意义{需要把它们关联到窗体的 LayoutMgr 属性; 主模板需要通过 IWServerController.MasterTemplate 指定}


TIWTemplateProcessorHTML 所在单元及继承链:
IWTemplateProcessorHTML.TIWTemplateProcessorHTML < TIWContainerLayout < TIWBaseContainerLayout < TIWBaseLayoutComponent < TIWVCLComponent < TComponent < TPersistent < TObject

主要成员:
property Enabled: Boolean       //使用或禁用模板, 默认 Trueproperty MasterFormTag: Boolean	//是否使用主模板, 默认是 True; 如果要使用当前模板应该让它是 Falseproperty TagType: TIWTemplateLayoutHTMLTagType //ttBorland、ttIntraWeb(默认); 默认使用 {%控件名%} 嵌入控件, 如果选择 ttBorland 则用 {#控件名#}property Templates: TIWTemplateFiles //Templates.Default 默认指向 Templates\窗体名.html(如: IWForm1.html, 要求 Utf8格式), 也可以修改它(譬如动态变换模板时)property RenderStyles: Boolean	     //?property RemoveHiddenInputs: Boolean //移除隐藏控件, 默认 Falseproperty MasterTemplate: string	     //也可以指定页面级的主模板, 但一般没必要property OnUnknownTag: TIWUnknownTagEvent	  //处理没有对应控件情况, 一般用于自定义标签property OnBeforeProcess: TIWTemplateProcessEvent //property OnAfterProcess: TIWTemplateProcessEvent  //function Able: Boolean		   //可通过该函数判断模板是否可用function TemplatePathname: string; //可获取模板的详细地址//在模板中使用容器中的控件: {% 容器名.控件名 %} 


OnUnknownTag 事件测试:
//假如在模板中自定义了 {%BaiduLogo%}procedure TIWForm1.IWTemplateProcessorHTML1UnknownTag(const AName: string; var VValue: string);begin  if AName = ‘BaiduLogo‘ then    VValue := ‘<img src="http://www.baidu.com/img/baidu_sylogo1.gif"/>‘;end;



TIWLayoutMgrHTML 所在单元及继承链:
IWLayoutMgrHTML.TIWLayoutMgrHTML < TIWContainerLayout < TIWBaseContainerLayout < TIWBaseLayoutComponent < TIWVCLComponent < TComponent < TPersistent < TObject

主要成员:
property HTML: TStringList //property OnUnknownTag: TIWUnknownTagEvent //