当我在网格中创建
button + entry + button
时,entry
被居中了,但并没有完全填满列。我该如何通过 Entry
来填充整列?
# Python 3.4.1
import io
import requests
import tkinter as tk
from PIL import Image, ImageTk
def get_image():
im = requests.get('http://lorempixel.com/' + str(random.randint(300, 400)) + '/' + str(random.randint(70, 120)) + '/')
return Image.open(io.BytesIO(im.content))
class ImageSelect(tk.Frame):
def __init__(self, master=None):
tk.Frame.__init__(self, master)
master.resizable(width=False, height=False)
master.title('Image manager')
master.iconify = False
master.deiconify = False
master.grab_set = True
image = ImageTk.PhotoImage(get_image())
self.image = tk.Label(image=image)
self.image.image = image
self.image.grid(row=0, columnspan=3)
self.reload = tk.Button(text='Reload').grid(row=1, column=0, sticky='w')
self.path = tk.Entry().grid(row=1, column=1, sticky='we')
self.submit = tk.Button(text='Submit').grid(row=1, column=2, sticky='e')
root = tk.Tk()
app = ImageSelect(master=root)
app.mainloop()
master.grid_columnconfigure(1, weight=1)
,它起作用了。谢谢。 - Patrick Burns.grid(..., padx=10)
或在左右使用不同的填充.grid(..., padx=(10, 5) )
。pady
同理。请参考 effbot.org: Grid。顺便说一句:如果您不想粘贴到角落/边缘,也可以尝试删除sticky='we'
。 - furas