在delphi中使用xml文档的两种方法

时间:2010-01-29 08:56:21  来源:第二电脑网  作者:第二电脑网

  第二电脑网导读:ML; interface uses Classes  HTTPApp  Db  DbClient  Midas  XMLBrokr  WebComp  MidItems; type TCustomShowXMLButton = class(TXMLButton  IScriptComponent) protected XMLMethodName: string; { IScriptComponent } procedure AddE...
  正文:Delphi中使用xml文档有两种方法,使用xml broker, 是delphi 内置的。例:

unit ShowXML;
interface
uses Classes  HTTPApp  Db  DbClient  Midas  
XMLBrokr  WebComp  MidItems;
type
TCustomShowXMLButton = class(TXMLButton  IScriptComponent)
protected
XMLMethodName: string;
{ IScriptComponent }
procedure AddElements(AddIntf: IAddScriptElements);
function GetSubComponents: TObject;
{ IWebContent implementation }
function ImplContent(Options: TWebContentOptions;
ParentLayout: TLayout): string; override;
end;
TShowXMLButton = class(TCustomShowXMLButton)
public
constructor Create(AOwner: TComponent); override;
published
property Custom;
property Style;
property StyleRule;
property Caption;
property XMLBroker;
property XMLUseParent;
end;
TShowDeltaButton = class(TCustomShowXMLButton)
public
constructor Create(AOwner: TComponent); override;
published
property Custom;
property Style;
property StyleRule;
property Caption;
property XMLBroker;
property XMLUseParent;
end;
implementation
uses sysutils  MidProd;
resourcestring  
sShowXML = 'Show XML';
sShowDelta = 'Show Delta';
procedure TCustomShowXMLButton.AddElements(
AddIntf: IAddScriptElements);
begin
  AddIntf.AddIncludeFile('xmlshow.js');
end;
function TCustomShowXMLButton.GetSubComponents: TObject;
begin
  Result := nil;
end;
function TCustomShowXMLButton.ImplContent(Options: TWebContentOptions;
ParentLayout: TLayout): string;
var
Attrs: string;
Intf: ILayoutWebContent;
FormVarName: string;
RowSetVarName: string;
begin
  AddQuotedAttrib(Attrs  'NAME'  Name);
  AddQuotedAttrib(Attrs  'STYLE'  Style);
  AddQuotedAttrib(Attrs  'CLASS'  StyleRule);
  AddQuotedAttrib(Attrs  'VALUE'  Self.Caption);
  AddCustomAttrib(Attrs  Custom);
  if Assigned(XMLData.XMLBroker) then
  begin
    FormVarName := XMLData.XMLBroker.SubmitFormVarName;
    RowSetVarName := XMLData.XMLBroker.RowSetVarName(nil);  // Row row set var name
  end;
  if not (coNoScript in Options.Flags) then
  Result :=
  Format(''#13#10  
  [Attrs  RowSetVarName  XMLMethodName  sXMLReadyVar])
  else
  Result :=
  Format(''#13#10  
  [Attrs]);
  if Assigned(ParentLayout) and ParentLayout.GetInterface(ILayoutWebContent  Intf) then
  Result := Intf.LayoutButton(Result  GetLayoutAttributes);
end;
{ TShowXMLButton }
constructor TShowXMLButton.Create(AOwner: TComponent);
begin
  inherited;
  DefaultCaption := sShowXML;
  XMLMethodName := 'root';
end;
{ TShowDeltaButton }
constructor TShowDeltaButton.Create(AOwner: TComponent);
begin
  inherited;
  DefaultCaption := sShowDelta;
  XMLMethodName := 'getDelta()';
end;


另一种方法使用msxml.dll 如下:

"在delphi中使用xml文档的两种方法"由第二电脑网原创提供,转载请注明:http://www.002pc.com/master/College/Language/Delphi/12585.html


关键字:

关于《在delphi中使用xml文档的两种方法》文章的评论

站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td