第五季及;QtQuick2-透明主窗口
我试图创建一个简单的QtUI,它有一个无框窗口和圆角。从使用QtQuick 2应用程序模板的新项目开始,我的代码如下所示: main.cpp 这就是结果: 我不想做的是通过使主窗口透明来去除白色角落。然而,据我所知,在Qt5中没有办法做到这一点,因为我们没有样式表等,我也没有使用QtWidget。我应该使用QtWidget吗第五季及;QtQuick2-透明主窗口,qt,qml,qt5,qtquick2,Qt,Qml,Qt5,Qtquick2,我试图创建一个简单的QtUI,它有一个无框窗口和圆角。从使用QtQuick 2应用程序模板的新项目开始,我的代码如下所示: main.cpp 这就是结果: 我不想做的是通过使主窗口透明来去除白色角落。然而,据我所知,在Qt5中没有办法做到这一点,因为我们没有样式表等,我也没有使用QtWidget。我应该使用QtWidget吗 顺便说一句,我不熟悉Qt和Qt5。在应用程序查看器上设置背景清晰颜色,使alpha为0: viewer.setColor(QColor(0, 0, 0, 0)); 您必
顺便说一句,我不熟悉Qt和Qt5。在应用程序查看器上设置背景清晰颜色,使alpha为0:
viewer.setColor(QColor(0, 0, 0, 0));
您必须使用查看器.setMask()
来告诉显示qml的qt小部件在何处绘制以及在何处不绘制
我使用的大多是矩形掩码,但setMask接受一个QRegion,我认为它支持更复杂的表单,甚至支持位图掩码。这在Windows 8和Ubuntu 12.04下对我很有效
import QtQuick 2.3
import QtQuick.Window 2.2
Window {
width: 300
height: 300
flags: Qt.FramelessWindowHint | Qt.Window
color: "transparent"
Rectangle {
color: "brown"
anchors.fill: parent
anchors.margins: 10
}
}
对于任何像我一样在这么晚的时候偶然发现的人。对于C++和Python,至少必须指定WITGET属性<代码> WauTurnLuxTebug 才能使您的背景透明。看起来,这可能在5.1中通过使用WEATE > QWIDGET::CealEndoWistCuulter()/<代码>创建一个窗口作为容器窗口来解决。请参阅和。我将尝试从源代码处编译5.1,看看是否可以运行。@andrewrjones您可以回答并接受自己的问题。@MottiStrom从未找到答案,而是继续使用其他内容。这在Qt 5.0中不起作用。你的背景是黑色的,不是透明的。谢谢马库斯!差不多就是这样。在Mac上,我只需在窗口中添加
visible:true
,在矩形中添加radius:10
,就可以得到我想要的东西。将此作为示例项目上载到GitHub:非常好,很高兴它成功了。:)谢谢你在回购协议中提到我。
viewer.setColor(QColor(0, 0, 0, 0));
import QtQuick 2.3
import QtQuick.Window 2.2
Window {
width: 300
height: 300
flags: Qt.FramelessWindowHint | Qt.Window
color: "transparent"
Rectangle {
color: "brown"
anchors.fill: parent
anchors.margins: 10
}
}