• 2975阅读
  • 4回复

[提问]窗口Window透明问题... [复制链接]

上一主题 下一主题
离线leamus
 

只看楼主 倒序阅读 楼主  发表于: 2018-07-06
大家好,想问一下如何能让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,不行...


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

只看该作者 1楼 发表于: 2018-07-09
透明图片都是自动透明的呀~没有啥其他的操作呀,你最好把工程放到其他的电脑上试一下,可能是你的电脑环境问题导致的~
离线leamus

只看该作者 2楼 发表于: 2018-07-09
不是,想让一个窗口(QWindows的派生类)透明显示...
离线yhgaven

只看该作者 3楼 发表于: 2018-08-17
离线zzs0829

只看该作者 4楼 发表于: 2018-09-23
Qt5之后,Quick窗口透明度只要设置color就可以了:
Window {
    visible: true
    width: 640
    height: 480
    title: qsTr("Hello World")
    color: "transparent"
}
快速回复
限100 字节
 
上一个 下一个