我一直在尝试使用鼠标悬停事件来更改Tkinter中的butten小部件的背景颜色.我在网上得到了一些简单的代码,适用于文本,但颜色不合适.这里是:
from Tkinter import *
root - Tk()
b = Button(root, text='foo')
b.pack()
def enterB(event):
b.configure(text='bar', background='red')
def leaveB(event):
b.configure(text='foo')
b.bind('<Enter>', enterB)
b.bind('<Leave>', leaveB)
root.mainloop()
Run Code Online (Sandbox Code Playgroud)
当我将鼠标放在按钮上时,文本会变为"bar",但背景颜色会保持灰色.当我的鼠标离开按钮上方的区域时,背景颜色变为红色,文本变为"foo".这与应该发生的事情相反.
如果我在leaveB函数的b.configure语句中放置background ='blue',并保持其余部分相同,则保留按钮将使按钮保持蓝色,并且它永远不会是红色.
谁能告诉我发生了什么?
谢谢.
我正在学习Ruby并且未能使复合'if'语句起作用.这是我的代码(希望自我解释)
commentline = Regexp.new('^;;')
blankline = Regexp.new('^(\s*)$')
if (line !~ commentline || line !~ blankline)
puts line
end
Run Code Online (Sandbox Code Playgroud)
通过读取以下文件获得变量'line':
;; alias filename backupDir
Prog_i Prog_i.rb ./store
Prog_ii Prog_ii.rb ./store
Run Code Online (Sandbox Code Playgroud)
这失败了,我不知道为什么.基本上我希望在处理文件中的行时忽略注释行和空行.谢谢你的帮助.