×
Namespaces

Variants
Actions

在Qt和WP7上使用基本的网页浏览器

From Nokia Developer Wiki
Jump to: navigation, search
WP Metro Icon Porting.png
SignpostIcon WP7 70px.png
Article Metadata

代码示例
兼容于
文章
翻译:
最后由 hamishwillee 在 16 Jul 2013 编辑


这篇文章展示了如何在Qt和WP7上创建一个基本的网页浏览器。

Contents

简介

在这篇文章中,分别在Qt和WP7上创建了基本的网页浏览器代码实例。这两个平台上的浏览器都包含"网页浏览器",一个输入url的文本框和一个加载规定的URL的按钮。在QML范例中的"网页浏览"是由WebView元素提供的。WP7允许我们用WebBrowser控件来显示网页内容。

Qt Windows Phone
Web Browser in Qt
Web Browser in WP7
Example of Qt Example of WP

实现

下面的实例都是从Qt 和 WP7上的空白项目开始的。

Qt Project (main.qml)

我们创建一个有静态URLFlickable WebView'。'

Flickable {
id:webViewFlickr
anchors.fill: parent
width: parent.width
height: parent.height
contentWidth: Math.max(parent.width,1000)
contentHeight: Math.max(parent.height,800)
pressDelay: 200
WebView {
id: webView
anchors.fill: parent
 
preferredHeight: height
preferredWidth: Math.max(parent.width,1000)
url: "http://www.google.com/";
}
}

我们添加一个Button and TextField来进入URL。

TextField {
id: myTextField;
width: parent.width -70
text: "Enter your url here"
errorHighlight: true
anchors.left: parent.left
}
Button {
id: button
 
anchors.right: parent.right
text: "Go"
onClicked: {
webViewRect.reset(myTextField.text);
}
}

当用户在TextField输入url并点击Button,项目将调用javascript函数reset()来加载一个新的url。

function reset(aUrl) {
webView.url =aUrl;
}

请注意,这个项目只有导入QtWebKit模块并且申请了NetworkServices功能才能运行。

WP7 Project (MainPage.xaml)

在WP7上由WebBrowser控件来管理网页。我们添加这个控件并且让其拥有静态的URL。

<phone:WebBrowser HorizontalAlignment="Left" Margin="0,84,0,0" Name="webBrowser1" VerticalAlignment="Top" Height="523" Width="450" Source="http://www.google.com" />

就像在Qt平台上那样,我们添加一个TextBoxButton来得到用户的输入并且对url进行处理。

<TextBox Height="72" HorizontalAlignment="Left" Margin="9,6,0,0" Name="textBox1" Text="Enter your url here" VerticalAlignment="Top" Width="334" />
<Button Content="Go" Height="72" HorizontalAlignment="Left" Margin="349,6,0,0" Name="button1" VerticalAlignment="Top" Width="91" Click="button1_Click" />

当用户在TextBox中输入url并点击Button后,页面将加载到新的url。

private void button1_Click(object sender, RoutedEventArgs e)
{
string uri = textBox1.Text;
webBrowser1.Source = new Uri(uri, UriKind.Absolute);
}

源代码

This page was last modified on 16 July 2013, at 01:36.
80 page views in the last 30 days.