我正在使用QtCreater中的设计师尝试使用QML创建概念验证视频流播放器。它使用Quick Controls而不是小部件,因为它需要在没有小部件可用的设备上运行。
我已经成功地在屏幕边缘放置了一个像素的红色边框,其中有一个空矩形(行布局中具有列布局的矩形)作为一个简单的开始。这在Windows和我打算部署到的设备上运行。
但是,我想用视频播放器控件取代空矩形,而我最初在Windows上无法弄清楚如何做到这一点。
我已将multimedia
添加到我的qml quick
变量设置为QT
文件中的原始ProjName.pro
,并且我已经qmake
运行Qt.labs.calendar 1.0
Qt.labs.controls 1.0
Qt.labs.controls.material 1.0
Qt.labs.controls.universal 1.0
Qt.labs.folderlistmodel 2.1
Qt.labs.settings 1.0
Qt.labs.templates 1.0
QtCanvas3D 1.1
QtGraphicalEffects.private 1.0
QtPositioning 5.6
QtQuick.Controls 1.5
QtQuick.Extras 1.4
QtQuick.LocalStorage 2.0
QtQuick.Window 2.2
QtQuick.XmlListModel 2.0
QtSensors 5.6
QtTest 1.1
QtWebSockets 1.0
QtWebView 1.1
1}}从菜单中确保已被操作。
但是,当我在编辑设计器中的主窗体时使用QtCreator尝试导入模块时,我看不到包含单词" multimedia"一点都不我只看到了:
MainForm.ui.qml
我可以手动编辑import QtMultimedia 5.6
文件并将found not working imports:
file:///C:/path-to/MainForm.ui.qml:2 module "QtMultimedia"
is not installed
插入其中,但是当设计师重新启动时,它会在顶级控件旁边显示一条警告,其中包含帮助文字:
import
大约一个月前从Qt网站上下载QtCreator 4.0.1,我们在Windows和目标平台上都使用Qt 5.6.1。
我在网上找到的所有解决方案似乎都表明event.KeyCode
是所有需要的,但这似乎并非如此。
任何想法我做错了什么,或者在QML应用程序中运行其中一个QtMultimedia控件的过程是什么?
答案 0 :(得分:2)
显然这是故意的。据我所知,最好的方法是创建一个单独的组件(通过文本编辑器的QML文件),它自己导入多媒体类型。然后可以在设计师中使用它。例如,如果您使用以下内容创建VideoItem.qml
,则可以在设计器中使用它:
import QtQuick 2.0
import QtMultimedia 5.5
Rectangle {
width : 200
height : 200
color: "black"
Video {
id: video
source: "video.avi"
anchors.fill: parent
}
}