에서delphi中使사용xml文档有两种방법
使usexml 브로커, 是delphi 内置的。예:
단위 ShowXML;
인터페이스
클래스 HTTPApp Db DbClient Midas를 사용합니다.
XMLBrokr WebComp MidItems;
유형
TCustomShowXMLButton = 클래스(TXMLButton IScriptComponent)
보호됨
XMLMethodName: 문자열;
{ IScriptComponent }
프로시저 AddElements(AddIntf: IAddScriptElements);
함수 GetSubComponents: TObject;
{ IWebContent 구현 }
함수 ImplContent(옵션: TWebContentOptions;
ParentLayout: TLayout): 문자열; 보수;
끝;
TShowXMLButton = 클래스(TCustomShowXMLButton)
공공의
생성자 Create(AOwner: TComponent); 보수;
출판됨
재산 관례;
속성 스타일;
속성 StyleRule;
속성 캡션;
속성 XMLBroker;
속성 XMLUseParent;
끝;
TShowDeltaButton = 클래스(TCustomShowXMLButton)
공공의
생성자 Create(AOwner: TComponent); 보수;
출판됨
재산 관례;
속성 스타일;
속성 StyleRule;
속성 캡션;
속성 XMLBroker;
속성 XMLUseParent;
끝;
구현
sysutils MidProd를 사용합니다.
자원 문자열
sShowXML = 'XML 표시';
sShowDelta = '델타 표시';
절차 TCustomShowXMLButton.AddElements(
AddIntf: IAddScriptElements);
시작하다
AddIntf.AddIncludeFile('xmlshow.js');
끝;
함수 TCustomShowXMLButton.GetSubComponents: TObject;
시작하다
결과 := 없음;
끝;
함수 TCustomShowXMLButton.ImplContent(옵션: TWebContentOptions;
ParentLayout: TLayout): 문자열;
var
속성: 문자열;
Intf: ILayoutWebContent;
FormVarName: 문자열;
RowSetVarName: 문자열;
시작하다
AddQuotedAttrib(속성 'NAME' 이름);
AddQuotedAttrib(속성 'STYLE' 스타일);
AddQuotedAttrib('CLASS' 스타일 규칙 속성);
AddQuotedAttrib(속성 'VALUE' Self.Caption);
AddCustomAttrib(사용자 정의 속성);
할당된 경우(XMLData.XMLBroker)
시작하다
FormVarName := XMLData.XMLBroker.SubmitFormVarName;
RowSetVarName := XMLData.XMLBroker.RowSetVarName(nil); // 행 행 세트 var 이름
끝;
그렇지 않은 경우(Options.Flags의 coNoScript)
결과 :=
형식(''#13#10
[속성 RowSetVarName XMLMethodName sXMLReadyVar])
또 다른
결과 :=
형식(''#13#10
[속성]);
Assigned(ParentLayout) 및 ParentLayout.GetInterface(ILayoutWebContent Intf)인 경우
결과 := Intf.LayoutButton(Result GetLayoutAttributes);
끝;
{ TShowXMLButton }
생성자 TShowXMLButton.Create(AOwner: TComponent);
시작하다
상속됨;
DefaultCaption := sShowXML;
XMLMethodName := '루트';
끝;
{ TShowDeltaButton }
생성자 TShowDeltaButton.Create(AOwner: TComponent);
시작하다
상속됨;
DefaultCaption := sShowDelta;
XMLMethodName := 'getDelta()';
끝;
msxml.dll 설명:
....
....
절차 TDHEDForm.OpenBtnClick(Sender: TObject);
var
pVIn: OleVariant;
프롬프트: OleVariant;
시작하다
pVIn := '';
프롬프트 := 참;
DHTMLEdit1.LoadDocument(pVIn 프롬프트);
끝;
절차 TDHEDForm.SaveBtnClick(Sender: TObject);
var
vo vb : OleVariant;
시작하다
vo := DHTMLEdit1.CurrentDocumentPath;
if (vo <> '') 그러면
시작하다
VB := 거짓;
끝
또 다른
시작하다
vo := '';
VB := 사실;
끝;
DHTMLEdit1.SaveDocument(vo vb);
끝;
절차 TDHEDForm.SaveAsClick(Sender: TObject);
var
vo vb : OleVariant;
시작하다
vo := '';
VB := 사실;
DHTMLEdit1.SaveDocument(vo vb);
끝;
...
//本文为转贴,작자불详,仅供大家参考