استخدام دلفي لأنظمة XML
وسيط XML، أو دلفي دلفي:
وحدة ShowXML؛
واجهة
يستخدم فئات HTTPApp Db DbClient Midas
XMLBrokr WebComp MidItems؛
يكتب
TCustomShowXMLButton = فئة (TXMLButton IScriptComponent)
محمي
XMLMethodName: سلسلة؛
{ آي سكريبت كومونينت }
الإجراء AddElements(AddIntf: IAddScriptElements);
وظيفة GetSubComponents: TObject؛
{ تنفيذ IWebContent }
وظيفة ImplContent(Options: TWebContentOptions;
ParentLayout: TLayout): سلسلة؛ تجاوز؛
نهاية؛
TShowXMLButton = فئة (TCustomShowXMLButton)
عام
إنشاء المنشئ(AOwner: TComponent); تجاوز؛
نشرت
مخصص الملكية؛
نمط الملكية؛
خاصية StyleRule؛
تسمية توضيحية للملكية؛
خاصية XMLBroker;
الخاصية XMLUseParent;
نهاية؛
TShowDeltaButton = فئة (TCustomShowXMLButton)
عام
إنشاء المنشئ(AOwner: TComponent); تجاوز؛
نشرت
مخصص الملكية؛
نمط الملكية؛
خاصية StyleRule؛
تسمية توضيحية للملكية؛
خاصية XMLBroker؛
الخاصية XMLUseParent;
نهاية؛
تطبيق
يستخدم sysutils MidProd؛
سلسلة الموارد
sShowXML = 'إظهار XML';
sShowDelta = 'إظهار الدلتا';
الإجراء TCustomShowXMLButton.AddElements(
AddIntf: IAddScriptElements);
يبدأ
AddIntf.AddIncludeFile('xmlshow.js');
نهاية؛
الدالة TCustomShowXMLButton.GetSubComponents: TObject;
يبدأ
النتيجة := لا شيء؛
نهاية؛
الدالة TCustomShowXMLButton.ImplContent(Options: TWebContentOptions;
ParentLayout: TLayout): سلسلة؛
فار
Attrs: سلسلة؛
Intf: ILayoutWebContent;
FormVarName: سلسلة؛
RowSetVarName: سلسلة؛
يبدأ
AddQuotedAttrib(Attrs 'NAME' Name);
AddQuotedAttrib(Attrs 'STYLE' Style);
AddQuotedAttrib(Attrs 'CLASS' StyleRule);
AddQuotedAttrib(Attrs 'VALUE' Self.Caption);
AddCustomAttrib(Attrs Custom);
إذا تم تعيينه (XMLData.XMLBroker) بعد ذلك
يبدأ
FormVarName := XMLData.XMLBroker.SubmitFormVarName;
RowSetVarName := XMLData.XMLBroker.RowSetVarName(nil); // مجموعة صفوف الصف var name
نهاية؛
إذا لم يكن الأمر كذلك (coNoScript في Options.Flags) إذن
النتيجة :=
التنسيق (''#13#10
[Attrs RowSetVarName XMLMethodName sXMLReadyVar])
آخر
النتيجة :=
التنسيق (''#13#10
[العطور])؛
إذا تم تعيينه (ParentLayout) وParentLayout.GetInterface (ILayoutWebContent Intf) ثم
النتيجة := Intf.LayoutButton(Result GetLayoutAttributes);
نهاية؛
{ TShowXMLButton }
المنشئ TShowXMLButton.Create(AOwner: TComponent);
يبدأ
موروث؛
DefaultCaption := sShowXML;
XMLMethodName := 'root';
نهاية؛
{ تسودلتابوتون }
المنشئ TShowDeltaButton.Create(AOwner: TComponent);
يبدأ
موروث؛
DefaultCaption := sShowDelta;
XMLMethodName := 'getDelta()';
نهاية؛
رابط تحميل ملف msxml.dll:
....
....
الإجراء TDHEDForm.OpenBtnClick(Sender: TObject);
فار
pVIn : OleVariant;
موجه: أوليفاريانت؛
يبدأ
pVIn := '';
موجه := صحيح؛
DHTMLedit1.LoadDocument(pVIn Prompt);
نهاية؛
الإجراء TDHEDForm.SaveBtnClick(Sender: TObject);
فار
vo vb : OleVariant;
يبدأ
vo := DHTMLedit1.CurrentDocumentPath;
إذا (vo <> '') إذن
يبدأ
vb := خطأ;
نهاية
آخر
يبدأ
فو := '';
vb := صحيح;
نهاية؛
DHTMLedit1.SaveDocument(vo vb);
نهاية؛
الإجراء TDHEDForm.SaveAsClick(Sender: TObject);
فار
vo vb : OleVariant;
يبدأ
فو := '';
vb := صحيح;
DHTMLedit1.SaveDocument(vo vb);
نهاية؛
...
//الأمر متروك لكم