喵提醒开发文档

喵提醒开发文档


按键精灵PC版代码示例

<p>将以下代码复制到脚本代码的顶部,替换<code>RParamUrl</code>为你的获取参数API网址。<code>MiaoCode</code>保存喵码,喵码通常由用户提供。</p> <pre><code class="language-vb">DimEnv RParamUrl, MiaoCode, RParamJson //获取参数API网址 RParamUrl = &amp;quot;http://miaotixing.com/rparam?rp=rp-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&amp;amp;code=&amp;quot; //喵码,通常由用户输入提供 MiaoCode = &amp;quot;txxxxxx&amp;quot; //API返回的数据 RParamJson = &amp;quot;{}&amp;quot; //拉取参数数据到变量RParamJson。需要注意:参数有缓存,缓存失效后才能拿到用户填写的最新参数。 Function LoadRParam() ApiUrl = RParamUrl &amp;amp; MiaoCode &amp;amp; &amp;quot;&amp;amp;type=json&amp;quot; Set objXML = CreateObject(&amp;quot;Microsoft.XMLHTTP&amp;quot;) objXML.Open &amp;quot;Get&amp;quot;, ApiUrl, False objXML.send //TracePrint &amp;quot;RParam API 网址:&amp;quot; &amp;amp; ApiUrl //TracePrint &amp;quot;RParam API 返回:&amp;quot; &amp;amp; objXML.responseText RParamJson = objXML.responseText Set objXML = Nothing End Function //读取参数key的值,如果key不存在则返回defValue Function RParam(key, defValue) Set jsonData = CreateObject(&amp;quot;MSScriptControl.ScriptControl&amp;quot;) jsonData.Language = &amp;quot;JScript&amp;quot; jsonData.AddCode &amp;quot;var data = &amp;quot; &amp;amp; RParamJson &amp;amp; &amp;quot;;&amp;quot; If jsonData.Eval(&amp;quot;data.&amp;quot; &amp;amp; key &amp;amp; &amp;quot; !== undefined&amp;quot;) Then RParam = jsonData.Eval(&amp;quot;data.&amp;quot; &amp;amp; key) Else RParam = defValue End If Set jsonData = Nothing End Function</code></pre> <p>拉取参数时,通过<code>Call LoadRParam()</code>方式,参数数据会保存到变量RParamJson,供后面读取参数时候使用。 读取参数时,通过<code>RParam(key, defValue)</code>方式读取指定key的参数;特殊情况下我们会担心指定key的参数获取失败而影响脚本运行,比如发布新版时候不慎删除某个有用的key,而defValue参数的作用是发现key参数不存在时,以defValue值作为参数值返回。</p> <pre><code class="language-vb">//拉取参数 Call LoadRParam() //返回key为submited_at的参数值,如果不存在该参数,则返回0 TracePrint &amp;quot;submited_at : &amp;quot; &amp;amp; RParam(&amp;quot;submited_at&amp;quot;, 0) //返回key为key1的参数值,如果不存在该参数,则返回123 TracePrint &amp;quot;key1 : &amp;quot; &amp;amp; RParam(&amp;quot;key1&amp;quot;, 123)</code></pre> <p>如果脚本有界面,希望获取到的新参数同步修改界面,可以把新参数回写到界面。 例如,窗口Form1有一个名为InputBox1的输入框,希望该输入框的内容与参数key1参数同步。</p> <pre><code class="language-vb">//返回key为key1的参数值,如果不存在该参数,则返回 Form1.InputBox1.Text 的内容 //最终返回的内容又更新到 Form1.InputBox1.Text Form1.InputBox1.Text = RParam(&amp;quot;key1&amp;quot;, Form1.InputBox1.Text)</code></pre>

页面列表

ITEM_HTML