快速业务通道

用Flash制作Google搜索程序

作者 佚名技术 来源 服务器技术 浏览 发布时间 2012-07-12
击“+” 图标去选择你要绑定的参数。输入参数是用右箭头表标示,输出参数是用一个左箭头来标示 (如图)。Google界面需要所有的输入参数,因此一个一个的把它们增加到绑定列表,因为我们也需要绑定一个输出参数, 所也增加输出参数到列表。
  
4. 对于列表中的每一个绑定,你需要设置一个UI 组件, 一个变量参考, 或者一个文字变量去传给或从web 服务返回。首先从绑定列表中选择“params.q”—传给Google服务的搜索请求字串,然后把它绑定到“frmSearch”表单中的“TextInput”组件, 单击“Bound To”行上的"find" 图标。Flash打开“Bound To”对话框,那里显示了你应用程序的一个等级列表,查找“txtQuery”组件实例,选择它,然后单击OK按纽 (如图)。
  
5. 为 Google服务填写其余的输入参数。其他参数能带文字输入。去定义一个文本输入,除了在“Bound To”对话框核选用户常量和在相应的文本框中输入的文字外,其它按照第 4 步同样操作。以下清单显示了每个输入参数的值。
params.key [你的Google Web API 的产品密钥]
params.start 0
params.maxResults 10
params.filter true
params.restrict
params.safeSearch true
params.lr
params.ie
params.oe   重复第四步为 results.searchTime 输入参数, 绑定它到“frmSearch”表单的“lblSearchTime”组件实例。组件系统允许你在绑定之前去格式化这个输入或输出,既然“searchTime”参数正好是一个浮点数,那么我们可以去格式化这个值以便让用户更容易理解。从“Formatter”弹出菜单,选择“Compose String”,然后单击“Formatter”选项,然后在对话框中输入下列字符串:Search time:<.> seconds(如图)
  
  当组件被绑定的时候这个参数值将被<.>占位符替换。
  注意:Flash安全沙箱设置:如果Flash应用程序不通过一个代理类在网站上运行,那么当前是不允许去直接访问一个远程WEB服务的。然而,如果你的计算机安装了Flash 或 Flash Professional这可以在你的计算机上工作,这是因为你有Flash Player 的开发者版本。这个例子如果没有服务端代理的话将不工作。
  附加脚本动作
  新的行为(behaviors)使控制描述UI组件事件比以往版本更容易。
  在这儿我们将用一个行为去触发web 服务并且显示结果:
1. 在frmSearch上单击“btnSearch”按纽,在“行为面板”,单击“+”图标并选择 Data > Trigger Data Source。在结果对话框,选择“GoogleSearch” WebServiceConnector并单击OK按纽 (如图)。  
2. 当“btnSearch”处于选中状态,打开“动作面板”(Actions panel)。你将看到Flash自动增加当用户单击“Search”按纽时去触发web 服务的代码。
3. 所有web服务如果不能在组件检查器中绑定,你需要用代码管理。在触发事件之前,增加下列代码,事件监听者允许你去拦截web 服务发送和结果事件且可以用ActionScript去完成附加的操作。
on (click) {
// 触发数据源行为
// Macromedia 2003
this._parent.GoogleSearch.addEventListener("send", onGoogleSearch);
this._parent.GoogleSearch.addEventListener("result", onGoogleSearchResult);
this._parent.GoogleSearch.trigger();
}4. 增加处理这些事件的ActionScript函数,下面的代码做一些界面操作例如当搜索在进行时允许和禁止组件,更重要的是他能重述Google的返回结果,你可用HTML格式化它们,并显示他们在“txtResults”“TextArea”实例。
on (click) {
var onGoogleSearch = function()
{
// 当不搜索的时候显示进度棒图
_root.application.frmSearch.frmLoading.visible = true;
this._parent.txtResults.text = "";
this._parent.lblSearchTime.text = "";
this.enabled = false;
this._parent.txtQuery.enabl

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号