在IDLE时某些Tkinter选项不可用

时间:2014-10-19 19:44:51

标签: python-3.x tkinter python-idle

我正在尝试创建一个按钮,当窗口小部件处于更改颜色时(我使用的是python-idle3)。

我尝试按如下方式导入tkinter:

from tkinter import *
from tkinter import ttk

我的按钮创建代码如下所示,但在我添加activebackground选项

时不起作用
start_button=Button(window_frame,text="START",width=70,height=2).grid(row=8,column=0,stick="E",activebackground="black")

使用activebackground时出现错误消息:

Traceback (most recent call last):   File "/root/Desktop/GUi #1.py",
line 37, in <module>
   Button_expirement()   File "/root/Desktop/GUi #1.py", line 26, in Button_expirement
   start_button=Button(window_frame,text="START",width=70,height=2).grid(row=8,column=0,stick="E",activebackground="black")
File "/usr/lib/python3.2/tkinter/__init__.py", line 1914, in
grid_configure
    + self._options(cnf, kw))
**_tkinter.TclError: bad option "-activebackground": must be -column, -columnspan, -in, -ipadx, -ipady, -padx, -pady, -row, -rowspan, or -sticky**

我注意到其他一些小部件功能也很有限。任何解决方案?

1 个答案:

答案 0 :(得分:1)

activebackground不是grid函数调用的一部分。见http://effbot.org/tkinterbook/grid.htm

但在Button的函数调用中 。见http://effbot.org/tkinterbook/button.htm

所以也许你想写这个?

start_button=Button(window_frame,text="START",width=70,height=2,activebackground="black").grid(row=8,column=0,stick="E")

...或者如果您打算将背景设置为黑色,可以在Tk变量中进行设置(请参阅 Python Tkinter how to color a window using grid)。

root = Tk()           
root.configure(bg='black')