qin_yin 发表于 2020-12-25 18:50:57

tkinter Label的参数问题

当Label放在根窗口TK(),可以正常是设置bg参数,但是当Label组件放在Canvas上面就无法正常设置bg参数


    self.account = Entry(root)
      self.password = Entry(root)
      self.login = Button(root, text='登录', command=self.login_on)
      self.var = StringVar()
      self.error_ = Label(root, textvariable=self.var, bg='red', font=('微软雅黑', 9))# 这里设置了bg参数.但是无法正常运行

      # 给登录'框架'添加组件对象
      self.interface_0.create_window(160, 200, width=100, height=20, window=self.account)
      self.interface_0.create_window(160, 225, width=100, height=20, window=self.password)
      self.interface_0.create_window(160, 285, width=50, height=20, window=self.login)
      self.interface_0.create_window(160, 180, width=100, height=20, window=self.error_)

以上是部分代码
报错:
Traceback (most recent call last):
File "D:/python库/py_code/tkmod.py", line 289, in <module>
    login = Login_window(root, data, mb_data)
File "D:/python库/py_code/tkmod.py", line 251, in __init__
    self.error_ = Label(root, textvariable=self.var, bg='red', font=('微软雅黑', 9))
File "C:\Users\Admin\AppData\Local\Programs\Python\Python38-32\lib\tkinter\ttk.py", line 759, in __init__
    Widget.__init__(self, master, "ttk::label", kw)
File "C:\Users\Admin\AppData\Local\Programs\Python\Python38-32\lib\tkinter\ttk.py", line 557, in __init__
    tkinter.Widget.__init__(self, master, widgetname, kw=kw)
File "C:\Users\Admin\AppData\Local\Programs\Python\Python38-32\lib\tkinter\__init__.py", line 2567, in __init__
    self.tk.call(
_tkinter.TclError: unknown option "-bg"

Daniel_Zhang 发表于 2020-12-25 19:43:04

试试 background

pythonsean 发表于 2020-12-25 22:37:54

看错误信息,你是用了ttk.Label,就是tkinter.ttk模块,这个里面是没有bg选项的,不是在canvas还是window上面的问题。如果想用bg属性,就用tk.Label

qin_yin 发表于 2020-12-26 19:57:49

pythonsean 发表于 2020-12-25 22:37
看错误信息,你是用了ttk.Label,就是tkinter.ttk模块,这个里面是没有bg选项的,不是在canvas还是window上 ...

你的意思也就是ttk模块里面也有个叫Label的组件,然后ttk模块里面Label把tkinter 的Labeld的覆盖了,命名空间问题

pythonsean 发表于 2020-12-26 20:22:04

是的,所以我一般这样import tkinter as tk
import tkinter.ttk as ttk
页: [1]
查看完整版本: tkinter Label的参数问题