【问题标题】:Make Tkinter Label and Frame Transparent Linux使 Tkinter 标签和框架透明 Linux
【发布时间】:2019-07-09 15:57:09
【问题描述】:

我正在为我的汽车创建一个自定义虚拟驾驶舱,我希望 Tkinter 背景是透明的,以便我可以在它后面运行另一个程序。

我试过了

master.wm_attributes('-transparentcolor','black')

但这似乎只适用于 Windows,并且会在 Linux 上返回 bad attribute

我的测试代码(适用于 Windows):

try:
    # for Python3
    from tkinter import *
except ImportError:
    # for Python2
    from Tkinter import *

root = Tk()
root.geometry('430x480+50+50')
root.title("Transparency Test")
root["bg"] = "black"

layer = PhotoImage(file ="rpm-overlay-overlay.png")
topFrame = Label(text="Ping Checker", bg="black", image=layer, fg="#fff", font="Bahnschrift 14")
topFrame.place(x=11,y=10)

topFrame.pack_forget()
topFrame.pack()

root.wm_attributes('-transparentcolor','black')

root.mainloop()

【问题讨论】:

  • 你不能让它在 Linux 上透明。使用 PyQt/PySide、PyGtk、wxPython 代替 tkinter。
  • 我无法在 Python 2.7.16 上使用 Rapsberry Pi 给我一个透明窗口
  • 在树莓派上安装应该没问题。如果您使用Raspbian(Raspberry 上的Debian),那么您使用Windows 管理器LXDE,它使用Gtk。也许它已经安装了 PyGtk。其他一些程序可能使用 Qt,因此它可能只需要 PyQt 或 PySide。安装 wxWindows 的 wxPython 可能会出现更多问题,它必须从 C/C++ 编译它,而且可能需要几个小时。
  • transparent window with PyGtk的教程。 PyGtk、PyQt等还有更多教程
  • 谢谢,我试试看!

标签: python tkinter raspberry-pi transparent


【解决方案1】:
root.attributes("-alpha", 0.5)

0.5 可以是介于 0(完全可见)和 1(完全可见)之间的任何值

【讨论】:

    猜你喜欢
    • 2014-06-03
    • 2018-07-26
    • 2012-05-14
    • 2021-11-13
    • 1970-01-01
    • 2020-09-15
    • 2014-12-31
    • 2015-07-22
    相关资源
    最近更新 更多