我安装了最新的Qt 5.5.0,但似乎只有QtQuick.Controls 1.0和1.1。我想使用TreeView,它包含在1.4版本中。
发布于 2015-08-25 21:21:57
你应该已经有了。尝试使用locate TreeView.qml查找TreeView.qml。此外,QtCreator或您的集成开发环境应该有适当的QML_IMPORT_PATH,它是从环境中获取的。例如,我的QtCreator没有设置正确的路径,所以我将其与设置路径并在之后运行/usr/bin/qtcreator的shell脚本一起使用-这使得QtCreator可以看到新的QML模块。我不知道这是一个bug还是一个ubuntu软件包的问题,但它只在我手动设置QML_IMPORT_PATH时才起作用。
你说你有这些路径:
~/Qt5.5.0/5.5/Src/qtquickcontrols/src/controls/TreeView.qml
~/Qt5.5.0/5.5/gcc_64/qml/QtQuick/Controls/TreeView.qml
~/Qt5.5.0/Tools/QtCreator/bin/qml/QtQuick/Controls/TreeView.qml
看起来你是通过从Qt的网站下载官方安装程序来安装的。因此,第一个路径是源路径。请不要使用,只需在从源码编译Qt并执行make install后安装到正确的目录中即可。
第三个是与您的QtCreator安装集成在一起的,但它似乎不适合您。
我想说,您的选择是使用第二路径(~/Qt5.5.0/5.5/gcc_64/qml/QtQuick/Controls/TreeView.qml)。它通常会自动安装到/usr/lib/x86_64-linux-gnu/qt5/ on amd64体系结构和/usr/lib/i386-linux-gnu/ for i386体系结构。
因此,在/usr/bin/中创建一个脚本,例如,将其命名为dev-qtcr,并放入其中:
#!/bin/bash
export QML_IMPORT_PATH=/home/user/Qt5.5.0/5.5/gcc_64/qml
qtcreator确保将/home/user更改为您的主目录。
发布于 2015-08-26 18:36:17
您是否尝试导出QML2_IMPORT_PATH而不是QML_IMPORT_PATH?
请参阅Import Statements | Qt QML
发布于 2015-08-27 23:00:44
另一种非常难看的解决方案是从gcc/qml/QtQuick/Controls编辑qmldir文件并添加以下行:
TreeView 1.4 TreeView.qml
因此,对我来说:
module QtQuick.Controls
plugin qtquickcontrolsplugin
classname QtQuickControlsPlugin
typeinfo plugins.qmltypes
designersupported
depends QtQuick.Window 2.2
TreeView 1.4 TreeView.qml您可以对QtQuick/Controls目录中的每个QML文件执行此操作。
这样,您将添加到此文件中的TreeView和所有其他QML类型都将被QtCreator识别。
请参阅http://doc.qt.io/qt-5/qtqml-modules-qmldir.html
https://stackoverflow.com/questions/32204158
复制相似问题