在 Ubuntu 12.04 中正确设置 Qt (QML) 以开始使用 QML 进行开发的分步指南是什么?

cyr*_*ldz 5 application-development ubuntu-touch

在我开始之前,这是我的设置: Ubuntu 12.04.1 从软件中心默认安装 Qtcreator。

剩下的,我都在做qtcreator的事情

我想从 QT 助手中尝试一些示例:首页 > QtWebKit QML 模块;

代码很简单,如下所示:

import QtWebKit 1.0

 WebView {
     url: "http://www.nokia.com"
     preferredWidth: 490
     preferredHeight: 400
     scale: 0.5
     smooth: false
 }
Run Code Online (Sandbox Code Playgroud)

我得到的错误是下面的错误

Qml debugging is enabled. Only use this in a safe environment!
file:///home/cyrildz/Public/Programming/UbuntuQml/UbuntuQml.qml:1:1: module "QtWebKit" is not installed 
     import QtWebKit 1.0 
     ^
Run Code Online (Sandbox Code Playgroud)

我从 qtcreator 那里得到了这个错误,这阻止了我运行这个例子。

为了在我的桌面上设置 Qt5,我从http://developer.ubuntu.com/get-started/gomobile/ 获取了描述

那是 :

sudo add-apt-repository ppa:canonical-qt5-edgers/qt5-beta1 && sudo apt-get update && sudo apt-get install qt5-meta-full && echo 'export PATH=/opt/qt5/bin:$PATH' >> ~/.bashrc
Run Code Online (Sandbox Code Playgroud)

进而 :

sudo add-apt-repository ppa:ubuntu-sdk-team/ppa && sudo apt-get update && sudo apt-get install qt-components-ubuntu qt-components-ubuntu-demos qt-components-ubuntu-examples qt-components-ubuntu-doc notepad-qml
Run Code Online (Sandbox Code Playgroud)

有关更多信息,我查看了文件夹:/usr/lib/qt4/imports,但没有看到与模块 QtWebkit1.0 相关的任何内容。有人可以帮忙解决这个问题吗?

Jos*_*lls 4

您需要确保您使用正确的版本命名 QtWebKit

import QtQuick 1.0 
import QtWebKit 1.0 
Run Code Online (Sandbox Code Playgroud)

这对于 Qt-Quick 1.0 来说非常棒,但是 QtWebKit 中的版本号发生了一些变化

import QtQuick 2.0 
import QtWebKit 3.0
Run Code Online (Sandbox Code Playgroud)

您还需要确保 QtCreator 使用正确的导入路径

例如,如果您使用 qt5 BETA 1 形式的规范 qt Edgers ppa(ppa:canonical-qt5-edgers/qt5-beta1) 则在

/opt/qt5/imports/ 
Run Code Online (Sandbox Code Playgroud)

里面有一些进口的。是运行qmlscene的默认区域

但是,如果您使用的是来自该站点(http://qt-project.org/downloads )的Qt5 stable,那么所有导入都应该在

/opt/qt5/5.0.0/gcc/qml
Run Code Online (Sandbox Code Playgroud)

或者你可以把它们放在下面

/opt/qt5/5.0.0/gcc/imports
Run Code Online (Sandbox Code Playgroud)

但是你需要设置 qmlsceen 正在使用的路径,例如

 -I /opt/qt5/5.0.0/gcc/imports
Run Code Online (Sandbox Code Playgroud)

您也可以从 Qt 创建者中执行此操作

在此输入图像描述

或者从命令行

/opt/qt5/5.0.0/gcc/bin/qmlscene -I /opt/qt5/5.0.0/gcc/imports MyQmlfile.qml
Run Code Online (Sandbox Code Playgroud)

我在这个 wiki 上写了更多相关内容

https://wiki.ubuntu.com/Qml-Phone-Alternitive

qtwebkit 的示例

import QtQuick 2.0
import QtWebKit 3.0

Rectangle{
    id: rootangel
    color:"black"
    width: 1280  //parent.width
    height: 720 //parent.height
//anchors.fill: parent

WebView {
    url: "http://www.hulu.com"
    width: rootangel.width
    height: rootangel.height
    scale: 1
    smooth: false
}
}
Run Code Online (Sandbox Code Playgroud)