首页| 论坛| 消息

标题:窗口Window透明问题...
作者:leamus
日期:2018-07-06 23:32
内容:

大家好,想问一下如何能让QML的窗口(Window)显示一张图片(PNG)时能让图片透明部分正常透明.
经过几天的百度,无果,都是透明部分是黑色的,无法解决问题,大体都是以下方案:
1.使用QQuickView,然后setColor,再setSource.
2.setAttribute(Qt::WA_TranslucentBackground,true),这个函数在新版Qt中只适应于QWidget和派生类,而Window就没有派生这个类(包括QML的Window也是),只有MainWindow派生了QWidget类...
3.setStyleSheet("background:transparent;"),也不行...
4.使用QQmlApplicationEngine来load QML,试了各种color也不行...
5.各种类的各种setFlags或setWindowFlags,也不行...
6.QQuickView的setMask,不行...

实在是没有办法了,希望大家能集思广益一下~谢谢


#1 [never_forget 07-09 08:55]
透明图片都是自动透明的呀~没有啥其他的操作呀,你最好把工程放到其他的电脑上试一下,可能是你的电脑环境问题导致的~
#2 [leamus 07-09 16:28]
不是,想让一个窗口(QWindows的派生类)透明显示...
#3 [yhgaven 08-17 12:48]
https://www.cnblogs.com/mcumagic/p/5806153.html
#4 [zzs0829 09-23 19:46]
Qt5之后,Quick窗口透明度只要设置color就可以了:
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello World")
color: "transparent"
}

回复 发表
主题 版块