QMacros 的宏支持传递参数,其参数的格式参照 JSON 执行,所以 QMacros 的参数支持 JSON 所有的数据类型:null、true/false、数值、字符串、对象和数组,字符串中内容的转义也遵守 JSON 的规则。
【注意】
如果 QMacros 调用 Complie 或 Replace 时,标志位指定了 MRF_ENABLE_ESCAPE,并同时指定了 MRF_IN_DBL_QUOTER 或MRF_IN_SINGLE_QUOTER 两者之一,则 JSON 中的字符串转义时,由于字符串中的\会被解析,所以造成直接被转义,所以一般建议参数中的字符串如果包含转义时,采用双反斜线,即 “a\r\nb” 应为 “a\\r\\nb”。
【示例】
下面是 QMacros 的 HTML 模板示例里的一段代码:
procedure TForm1.Button3Click(Sender: TObject);const STemplate: QStringW = '<html><head><title><%Title%></title></head>' + // '<body>多参数及转义示例<p>' + // '<%Info({"name":"QDAC","version":1.28,"copyright":"©QDAC team\t2016"},3.0)%>' + '</body>';var AMacros: TQMacroManager; AHtmlFile: String;begin AMacros := TQMacroManager.Create; try AMacros.Push('Title', 'QMacros HTML 模板示例'); AMacros.Push('Info', DoPrintInfo); AHtmlFile := ExtractFilePath(Application.ExeName) + 'index.html'; SaveTextW(AHtmlFile, AMacros.Replace(STemplate, '<%', '%>', MRF_PARSE_PARAMS)); WebBrowser1.Navigate('file:///' + StringReplaceW(AHtmlFile, '\', '/', [rfReplaceAll])); finally FreeAndNil(AMacros); end;end;
其中的 Info 宏提供了两个参数:
- 一个 JSON 格式的对象作为第一个参数: {“name”:”QDAC”,”version”:1.28,”copyright”:”©QDAC team\t2016″}
- 一个浮点值作为第二个参数: 3.0
我们看下 DoPrintInfo 宏的实现:
procedure TForm1.DoPrintInfo(AMacro: TQMacroItem; const AQuoter: QCharW);beginAMacro.Value.Value:='QMacros '+AMacro.Params[1].AsString+'<BR/>';with AMacro.Params[0] do begin AMacro.Value.Value:=AMacro.Value.Value+'工程名称:'+ValueByName('name','')+'<BR/>'+ '版本号:'+ValueByName('version','')+'<BR/>'+ '版权:'+ValueByName('copyright',''); end;end;
AMacro 是要赋值的宏对象,我们赋值时,将结果指定到 AMacro.Value.Value 上就可以。AMacro.Params 是一个 TQJson 数组类型的对象,我们可以完全按照 QJson 的用法,使用宏传递过来的参数,在些就不再缀述了。
上面的示例的实际运行效果:

HTML是一種用於構建網頁的語言,通過標籤和屬性定義網頁結構和內容。 1)HTML通過標籤組織文檔結構,如、。 2)瀏覽器解析HTML構建DOM並渲染網頁。 3)HTML5的新特性如、、增強了多媒體功能。 4)常見錯誤包括標籤未閉合和屬性值未加引號。 5)優化建議包括使用語義化標籤和減少文件大小。

WebDevelovermentReliesonHtml,CSS和JavaScript:1)HTMLStructuresContent,2)CSSStyleSIT和3)JavaScriptAddSstractivity,形成thebasisofmodernWebemodernWebExexperiences。

HTML的作用是通過標籤和屬性定義網頁的結構和內容。 1.HTML通過到、等標籤組織內容,使其易於閱讀和理解。 2.使用語義化標籤如、等增強可訪問性和SEO。 3.優化HTML代碼可以提高網頁加載速度和用戶體驗。

htmlisaspecifictypefodyfocusedonstructuringwebcontent,而“代碼” badlyLyCludEslanguagesLikeLikejavascriptandPytyPythonForFunctionality.1)htmldefineswebpagertuctureduseTags.2)“代碼”代碼“ code” code code code codeSpassSesseseseseseseseAwiderRangeLangeLangeforLageforLogageforLogicIctInterract

HTML、CSS和JavaScript是Web開發的三大支柱。 1.HTML定義網頁結構,使用標籤如、等。 2.CSS控製網頁樣式,使用選擇器和屬性如color、font-size等。 3.JavaScript實現動態效果和交互,通過事件監聽和DOM操作。

HTML定義網頁結構,CSS負責樣式和佈局,JavaScript賦予動態交互。三者在網頁開發中各司其職,共同構建豐富多彩的網站。

HTML適合初學者學習,因為它簡單易學且能快速看到成果。 1)HTML的學習曲線平緩,易於上手。 2)只需掌握基本標籤即可開始創建網頁。 3)靈活性高,可與CSS和JavaScript結合使用。 4)豐富的學習資源和現代工具支持學習過程。

AnexampleOfAstartingTaginHtmlis,beginSaparagraph.startingTagSareEssentialInhtmlastheyInitiateEllements,defiteTheeTheErtypes,andarecrucialforsstructuringwebpages wepages webpages andConstructingthedom。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

WebStorm Mac版
好用的JavaScript開發工具

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。