【问题标题】:Background color for Tk in PythonPython中Tk的背景颜色
【发布时间】:2010-04-30 13:28:19
【问题描述】:

我正在用 Tkinter 编写一个幻灯片程序,但我不知道如何将背景颜色更改为黑色而不是标准的浅灰色。如何做到这一点?

import os, sys
import Tkinter
import Image, ImageTk
import time

root = Tkinter.Tk()
w, h = root.winfo_screenwidth(), root.winfo_screenheight()
root.overrideredirect(1)
root.geometry("%dx%d+0+0" % (w, h))
root.focus_set()
root.bind("<Escape>", lambda e: e.widget.quit())
image = Image.open(image_path+f)
tkpi = ImageTk.PhotoImage(image)        
label_image = Tkinter.Label(root, image=tkpi)
label_image.place(x=0,y=0,width=w,height=h)
root.mainloop(0)

【问题讨论】:

  • 背景是什么?一个小部件?使用background 关键字。更多信息:pythonware.com/library/tkinter/introduction/widget-styling.htm
  • 许多 Tk 小部件都有 bg 属性,允许指定它们的背景颜色。
  • 好吧,我对 Tk 很陌生,所以我不确定小部件到底是什么,但 label_image.configure(background='black') 成功了。在这种情况下 label_image 是一个小部件还是只是根?
  • 经典 Tk 小部件具有该属性。主题往往不会;小部件的背景颜色是那里的样式/主题的属性。

标签: python tkinter tk


【解决方案1】:
root.configure(background='black')

或更一般地

<widget>.configure(background='black')

【讨论】:

  • 非常感谢!在这种情况下 label_image.configure(background='black') 是获得黑色背景所需要的!
  • 只能使用“黑色”或“白色”等预定义颜色或十六进制代码吗?
  • 据我所知,any proper color 没问题。这是a simple example
  • 对于后代,有效的颜色是系统定义的颜色(例如lots of named ones)或十六进制值,可以是#RGB#RRGGBB#RRRRGGGGBBBB的形式。
【解决方案2】:

我知道这是一个老问题,但是:

root["bg"] = "black"

也会做你想做的事,而且打字更少。

【讨论】:

  • 有趣 - 我不知道我们也可以使用 []。我发现的所有示例要么使用 .configure() ,要么在 ruby​​ 中使用 {} 块变体。然而,我确实更喜欢稍微长一点的名字“背景”。 bg 更短,但我认为有点冗长是可以的。
【解决方案3】:

已经更新了

root.configure(background="red")

现在:

root.configure(bg="red")

【讨论】:

    【解决方案4】:
    widget['bg'] = '#000000'
    

    widget['background'] = '#000000'
    

    也可以作为十六进制颜色也可以使用。

    【讨论】:

      【解决方案5】:

      config 是另一种选择:

      widget1.config(bg='black')
      widget2.config(bg='#000000')
      

      或:

      widget1.config(background='black')
      widget2.config(background='#000000')
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-01-08
        • 1970-01-01
        • 2012-07-31
        • 1970-01-01
        • 1970-01-01
        • 2016-09-10
        • 2017-05-13
        • 1970-01-01
        相关资源
        最近更新 更多