DELPHI MVC 实现

王朝delphi·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

昨天我自己引用了一个国外的网页,是关于MVC的,也是给大家做参考的,其实他所理解的MVC我不完全赞成,现将我的MVC 实现公布

下面是C控制层的代码!!!

{*******************************************************}

{ unit name: Controller }

{ class: TProgramController }

{ descripate: 此Class为MVC中的控制层, }

{ 担任着程序流程的调度工作 }

{ blog : http://blog.csdn.net/zhuam }

{ author: zhuam }

{ date : 2004/10/25 }

{ Copyright (c) 1.0 }

{*******************************************************}

unit Controller;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Mask, ExtCtrls, Model;

{-----------------------------------

descripate: 用于分发程序的业务流程

------------------------------------}

type

TProgramController=class(TObject)

private

TempModelClass:IProgramModel; //业务逻辑Class <Base Model>

public

procedure portal(FView:TForm;sOperator:string);

end;

implementation

uses Util, UnitMVCExample;

{ TProgramController }

procedure TProgramController.portal(FView: TForm;sOperator: string);

var

ClassTemp:TComponentClass;

SListRead:TSListReader;

XMLRead:TXMLReader;

sModel:string;

begin

try

SListRead:=TSListReader.Create;

XMLRead:=TXMLReader.Create;

sModel:=SListRead.getSListDataToModelString(XMLRead.getXMLDataToList,FView.Name,sOperator);

if Trim(sModel)<>'' then

begin

ClassTemp:=TComponentClass(getClass(sModel)); //类似java中的反射,根据名称产生Class实例

TempModelClass:=(ClassTemp.Create(nil) as IProgramModel);

TempModelClass.Execute(FView);

end;

except

//raise

end;

end;

initialization

RegisterClass(TForm1Model);

end.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航