回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我正在尝试在Eclipse中将一些<strong>Python2.7</strong>代码重构成一个新方法。在下面用注释标记的块上使用Eclipse的<code>Refactoring->Extract method</code>之后,我的图像不再显示在GUI中:</p>
<pre><code>from Tkinter import Tk, Button, W, E, N, S, Label, Frame
from PIL import Image, ImageTk
def myCallback():
pass
root = Tk()
# start refactor method here
root.geometry('400x400')
runButton = Button(root, text="Run",bg='green',
command=myCallback)
runButton.grid(row=2, column=0,
padx=10, pady=10)
quitButton = Button(root, text="Quit",
command=root.quit)
quitButton.grid(row=2, column=1,
padx=10, pady=10)
frame1 = Frame(width=200, height=200)
frame1.grid(row=1, column=0, columnspan=1, rowspan=1,
sticky=W+E+N+S, padx=10, pady=10)
image1 = Image.open("C:/Users/me/Pictures/house.jpg")
size = 64,64
image1.thumbnail(size, Image.ANTIALIAS)
photo1 = ImageTk.PhotoImage(image1)
label1 = Label(image=photo1)
label1.grid(row=0, column=10, columnspan=1, rowspan=1,
sticky=N+E, padx=10, pady=10)
# end refactor method here
root.mainloop()
</code></pre>
<p>有人能解释一下为什么图像会消失,并提出一个解决方案,这样我就可以在不丢失图像的情况下进行重构?在</p>
<p>重构后:</p>
^{pr2}$
<p>谢谢。在</p>