我们正在使用Adobe Flex开发一个小型桌面应用程序。在这个应用程序中,我们将有一个带输入框的屏幕,用户将在其中输入任何网站的URL然后输入。
提供URL后,桌面应用程序会将该网页打开到URL输入框正下方的同一屏幕。此外,我们想要一个选项来手动捕获该打开的网页的截图(即点击按钮)。
当在桌面应用程序中打开网页时,我们的屏幕应该像浏览器一样工作,即我们可以通过单击网页转到任何内部页面,而不是在输入框中提供另一个URL。
我们已经搜索了很多相同的东西,但没有得到任何东西。任何人都可以向我们解释,我们如何在桌面应用程序中实现这种功能?或者是否可以使用Adobe Flex制作此应用程序?
您的解决方案将不胜感激。提前谢谢。
答案 0 :(得分:3)
您可以使用HTML control。
执行此操作举个例子:
<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
width="920" height="580">
<fx:Script>
<![CDATA[
protected function btn_history_back_clickHandler(event:MouseEvent):void
{
// history back
html_browser.historyBack();
}
protected function btn_history_forward_clickHandler(event:MouseEvent):void
{
// history forward
html_browser.historyForward()
}
protected function btn_go_clickHandler(event:MouseEvent):void
{
var url:String = txt_url.text;
if(url != '')
{
if(url.substr(0, 4) == 'http')
{
// open the typed url
html_browser.location = url;
}
}
}
protected function html_browser_locationChangeHandler(event:Event):void
{
// update our url text input
txt_url.text = html_browser.location;
}
]]>
</fx:Script>
<mx:HTML id="html_browser" x="6" y="39" width="905" height="511"
locationChange="html_browser_locationChangeHandler(event)"/>
<s:Button id="btn_forward" x="38" y="10" width="28" label=">" click="btn_history_forward_clickHandler(event)"/>
<s:Button id="btn_go" x="858" y="10" width="50" label="GO" click="btn_go_clickHandler(event)"
enabled="true"/>
<s:TextInput id="txt_url" x="74" y="10" width="775"/>
<s:Button id="btn_back" x="10" y="10" width="28" label="<" click="btn_history_back_clickHandler(event)"/>
</s:WindowedApplication>
这会给你这样的东西(只是我按下后退按钮来显示不同的页面,它是同一个窗口):
当然,这只是一个非常简单的示例,向您展示如何开始,您可以根据您的特定需求进行改进和调整。
希望可以提供帮助。