我想基于 QtQuick2ApplicationViewer 模板为 Ubuntu Touch 编写一个应用程序,并且该应用程序需要写入一个文件(例如“/tmp/test.log”)。
我使用函数/宏进行了测试Q_INVOKABLE:
Q_INVOKABLE void QtQuick2ApplicationViewer::setData3(void) {
qDebug() << "setData";
}
Run Code Online (Sandbox Code Playgroud)
...并分享给Q_INVOKABLE.
但是我无法在我的 .qml 中调用该函数,并且出现错误:
...main.qml:289: ReferenceError: setData3 "is not defined"
Run Code Online (Sandbox Code Playgroud)
有没有人要下载一个有效的 demo.pro 文件?
或者使用 cpp-function+qml 作为 .pro 创建文件的工作方法进行下载?
在 ubuntutouch 的 qtcreator 版本中工作?
如何安装libqtwebkit5库?
我需要它用于 Qt 项目。我试过:
$ sudo apt-get install libqtwebkit5
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libqtwebkit5
Run Code Online (Sandbox Code Playgroud)
我在两个上都有这个问题:12.04 和 13.10
根据 Qt5 文档:公开包括 qt 插槽在内的方法,所有从 QObject 继承的 C++ 类的公共插槽都可以从 QML 访问这里我做了什么:
C++
class MyClass : public QObject
{
Q_OBJECT
public slots:
void doStuffFromQmlSlot()
{
qDebug() << Q_FUNC_INFO;
}
public:
MyClass()
{
qDebug() << Q_FUNC_INFO;
}
};
Run Code Online (Sandbox Code Playgroud)
我的main.cpp包含:
MyClass myClass;
QQmlEngine engine;
engine.rootContext()->setContextProperty( "myclass", &myClass );
QQmlComponent component( &engine, QUrl::fromLocalFile("qml/qtquick-01/main.qml") );
component.create();
Run Code Online (Sandbox Code Playgroud)
质量管理语言
import QtQuick 2.0
Rectangle {
width: 360
height: 360
Text {
text: qsTr("Hello World")
anchors.centerIn: parent
}
MouseArea {
anchors.fill: parent
onClicked: {
myclass.doStuffFromQmlSlot(); …Run Code Online (Sandbox Code Playgroud) 我有一个 CMake 项目。我正在尝试从 QT4 切换到 QT5。
find_package(QT5Widgets REQUIRED) EDIT HERE IS A TYPO problem solved (Qt5... instead of QT5...)
Run Code Online (Sandbox Code Playgroud)
已经给了我
By not providing "FindQT5Widgets.cmake" in CMAKE_MODULE_PATH this project
has asked CMake to find a package configuration file provided by
"QT5Widgets", but CMake did not find one.
Could not find a package configuration file provided by "QT5Widgets" with
any of the following names:
QT5WidgetsConfig.cmake
qt5widgets-config.cmake
Add the installation prefix of "QT5Widgets" to CMAKE_PREFIX_PATH or set
"QT5Widgets_DIR" to a directory containing one …Run Code Online (Sandbox Code Playgroud) 我想将 qt 5.4.1 更新到 Qt 5.5 或 5.4.2,因为我想在 WayLand 上测试 KDE Plasma。
注意:由于我的带宽有限,请提供消耗最少网络资源的解决方案。KUbuntu 15.04
ODA 绘图资源管理器(以前称为 Teigha Viewer)是由开放设计联盟开发的专有 DWG 文件的免费(非自由)查看器。
开发公司提供 RPM 和 DEB 包,以便在他们的站点上轻松安装。
我下载了 64 位 DEB 包,并使用以下命令安装它:
sudo dpkg -i TeighaViewer_QT5_lnxX64_4.7dll.deb
Run Code Online (Sandbox Code Playgroud)
之后,该软件很容易安装,我可以从 Dash(Windows 键 + 键入 Teigha)或使用命令从 bash 运行该软件
TeighaViewer
Run Code Online (Sandbox Code Playgroud)
该软件加载迅速并自动提示打开文件。这就是麻烦所在……并结束:当我选择任何 DWG 时,TeighaViewer 每次都始终崩溃。
在所有这些情况下,Teigha 都会系统地崩溃。
我什至尝试通过发出以下命令直接从命令行打开 DWG 文件:
TeighaViewer myTestFile.dwg
Run Code Online (Sandbox Code Playgroud)
但它仍然崩溃。请注意,打开的测试 DWG 文件的名称中没有空格。
从命令行运行 Teigha 时,有一个问题的提示:
~$ TeighaViewer myTestFile.dwg
QString::arg: Argument missing: Property Dialog, Teigha Viewer
QString::arg: Argument missing: …Run Code Online (Sandbox Code Playgroud)
我的系统上运行着 Ubuntu 20.04,直到最近才使用 pdf-viewer Okular。但是,现在双击 pdf 文件并从终端启动时,Okular 不会启动,会出现以下错误消息:有什么
okular: /snap/okular/109/kf5/usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.15' not found (required by okular)
想法可以解决这个问题吗?
我正在考虑尝试sudo apt-get install qt5-default我在https://wiki.qt.io/Install_Qt_5_on_Ubuntu 上找到的,但这是 Ubuntu 12.10 的命令,它明确指出它将在 Ubuntu 16.04 上产生错误。因为我不想破坏我的系统,所以我决定在尝试任何事情之前在这里发布一个问题。
对于如何让 Okular 再次运行的任何建议,我将不胜感激。
当我尝试启动 qtchooser 时,我收到此通知:
qtchooser: could not exec '/usr/lib/x86_64-linux-gnu/qt5/bin/qtchooser': No such file or directory
Run Code Online (Sandbox Code Playgroud)
我已经从ppa:canonical-qt5-edgers/qt5-beta-proper安装了 Qt5 我希望你能帮助我。
在全新的 Lubuntu 13.04 安装中,我从官方 ubuntu 存储库安装了 Qt5。但是这次安装Qt5却找不到QtQuick模块。我错过了什么?
qmlscene test.qml
Run Code Online (Sandbox Code Playgroud)
测试.qml:
import QtQuick 2.0
Rectangle {
}
Run Code Online (Sandbox Code Playgroud)
输出:
file:///home/.../test.qml:1 模块“QtQuick”未安装
我已经仔细检查了以下相关软件包是否已安装:
$ dpkg --get-selections | grep libqt5
libqt53d5:amd64 install
libqt5clucene5:amd64 install
libqt5concurrent5:amd64 install
libqt5core5:amd64 install
libqt5dbus5:amd64 install
libqt5declarative5:amd64 install
libqt5designer5:amd64 install
libqt5designercomponents5:amd64 install
libqt5gui5:amd64 install
libqt5help5:amd64 install
libqt5location5:amd64 install
libqt5network5:amd64 install
libqt5opengl5:amd64 install
libqt5opengl5-dev install
libqt5printsupport5:amd64 install
libqt5qml5:amd64 install
libqt5quick5:amd64 install
libqt5quickparticles5:amd64 install
libqt5quicktest5:amd64 install
libqt5script5:amd64 install
libqt5sensors5:amd64 install
libqt5sql5:amd64 install
libqt5sql5-mysql:amd64 install
libqt5sql5-sqlite:amd64 install
libqt5svg5:amd64 install
libqt5test5:amd64 install
libqt5v8-5:amd64 install …Run Code Online (Sandbox Code Playgroud) 我正在尝试将一个简单的项目从 Qt4 移植到 Qt5。该项目使用 QWebKit。我安装了qt5-default和libqt5webkit5-dev包。然后我更改了 qmake 项目文件以包含以下内容:
QT += webkitwidgets
Run Code Online (Sandbox Code Playgroud)
但是当我尝试运行时qmake,我得到了这个输出:
Project ERROR: Unknown module(s) in QT: quick location sensors
Run Code Online (Sandbox Code Playgroud)
我查了一下,libqt5quick5,libqt5location5和libqt5sensors5包都安装了(它们似乎是 的依赖项libqt5webkit)。
我错过了什么?
我在 Ubuntu 13.04,64 位。