我在Windows 7中使用tkinter和Python 3.4。如果我使用grid(),爲什麼窗口大小調整時窗口小部件不能縮放?
我以非絕對方式定位(我沒有使用位置,我使用網格),因此,小部件應該縮放當我自動調整窗口大小時。然而,這並沒有發生,我也沒有把握這一點。這裏是我的代碼:
import tkinter as tk
class App(tk.Frame):
def __init__(self, master=None):
tk.Frame.__init__(self, master)
self.config()
self.grid()
self.create_widgets()
def config(self):
self.master.title("Pykipedia Explorer")
def create_widgets(self):
self.search_label = tk.Label(self, text="Search: ")
self.search_label.grid(row=0, column=0, sticky=tk.N+tk.SW)
self.search_entry = tk.Entry(self)
self.search_entry.grid(row=0, column=0, padx=60, sticky=tk.N+tk.SW)
self.search_button = tk.Button(self, text="Explore!")
self.search_button.grid(row=0, column=0, padx=232, sticky=tk.SW)
self.content_area = tk.Text(self)
self.content_area.grid(row=1, column=0)
self.content_scroll_bar = tk.Scrollbar(self, command=self.content_area.yview)
self.content_scroll_bar.grid(row=1, column=1, sticky=tk.NW+tk.S+tk.W)
self.content_area["yscrollcommand"] = self.content_scroll_bar.set
self.quit_button = tk.Button(self, text="Quit", command=self.quit)
self.quit_button.grid(row=2, column=0, sticky=tk.SW)
def main():
app = App()
app.mainloop()
return 0
if __name__ == '__main__':
main()
爲什麼?
什麼給你的想法,調整窗口的大小應該由自動調整窗口小部件默認?如果您希望這樣做,則必須將窗口大小調整爲修改所有小部件的回調。 – TigerhawkT3
您需要行/列配置,並粘貼到雙方,如:'label.grid(column = 0,row = 0,sticky ='NSEW')' –