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


TIWTemplateProcessorHTML //使用外部的 html 文件做模板
TIWLayoutMgrHTML         //直接输入 Html 文本做模板
TIWLayoutMgrForm         //这应该只是内部使用的东西, 对用户没有意义

{需要把它们关联到窗体的 LayoutMgr 属性; 主模板需要通过 IWServerController.MasterTemplate 指定}


TIWTemplateProcessorHTML 所在单元及继承链:
IWTemplateProcessorHTML.TIWTemplateProcessorHTML
主要成员:
property Enabled: Boolean       //使用或禁用模板, 默认 True
property MasterFormTag: Boolean	//是否使用主模板, 默认是 True; 如果要使用当前模板应该让它是 False
property TagType: TIWTemplateLayoutHTMLTagType //ttBorland、ttIntraWeb(默认); 默认使用 {%控件名%} 嵌入控件, 如果选择 ttBorland 则用 {#控件名#}
property Templates: TIWTemplateFiles //Templates.Default 默认指向 Templates\窗体名.html(如: IWForm1.html, 要求 Utf8格式), 也可以修改它(譬如动态变换模板时)
property RenderStyles: Boolean	     //?
property RemoveHiddenInputs: Boolean //移除隐藏控件, 默认 False
property 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
主要成员:
property HTML: TStringList //

property OnUnknownTag: TIWUnknownTagEvent //


使用 IntraWeb (28) - 基本控件之 TIWTemplateProcessorHTML、TIWLayoutMgrHTML、TIWLayoutMgrForm,布布扣,bubuko.com

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

上一篇:AMD and CMD are dead之KMD.js依赖可视化工具发布


下一篇:jQuery无缝滚动插件