Win-7,Python 2.7。
我正在创建一个处理音乐播放器的应用程序,并使用进度条显示播放歌曲的当前位置。
我想点击进度条以寻找歌曲中的位置。
当用户更改父窗口的宽度时,进度条会更改大小。
我可以在进度条中获得x,y鼠标坐标,但是获得宽度会更加困难。 有没有办法确定进度条的当前宽度?
我已经尝试过event.winfo_width()和其他人,但继续得到“AttributeError:事件实例没有属性'winfo_width'”
def PositionIt(event):
print
print "Progress x=" + str(event.x) + " y=" + str(event.y)
print event.winfo_width()
# other methods I have tried
# print event.winfo_screenwidth()
# print event.winfo_geometry()
def SetupProgressBar(f_p, row, col):
s = ttk.Style()
s.theme_use('winnative')
s.configure("TProgressbar", thickness=12)
globs.currently_playing_progress_elapsed = 10
p_bar = ttk.Progressbar(f_p,
style="TProgressbar",
orient="horizontal",
mode='determinate',
length=0,
variable = globs.currently_playing_progress_elapsed)
p_bar.grid(row=row, column=col, sticky=('ew'))
p_bar.columnconfigure(col, weight=1)
p_bar.maximum = 100
p_bar.bind("<Button-1>", PositionIt)
谢谢,Mark。
答案 0 :(得分:0)
好的,我的坏,
print event.winfo_width()
应为:
print event.widget.winfo_width()
标记。