Sizegrip
尺寸手柄
放置于Frame
或者root
角落实现,拉动调节大小.
建议使用pack进行布局
from tkinter import *
from tkinter import ttk
def demo1():
root = Tk()
add_widget(root) # 添加哎几个组件
ttk.Sizegrip(root).pack(side="bottom", anchor="se")
root.mainloop()
def demo2():
root = Tk()
ttk.Sizegrip(root).grid(row=99, column=99, sticky="se")
root.columnconfigure(0, weight=1)
root.rowconfigure(0, weight=1)
bun1 = Button(root, text="111")
bun2 = Entry(root);
bun2.insert(END, "222")
bun3 = Label(root, text="333")
bun4 = Text(root);
bun4.insert(END, "444")
bun1.grid(row=1)
bun2.grid(row=2)
bun3.grid(row=3)
bun4.grid(row=4)
root.mainloop()
def demo3():
root = Tk()
frame1 = Frame(root);
frame1.pack(side="left", fill="both")
frame2 = Frame(root);
frame2.pack(side="left", fill="both")
sizegrip1 = ttk.Sizegrip(frame1)
sizegrip2 = ttk.Sizegrip(frame2)
add_widget(frame1)
add_widget(frame2)
sizegrip1.pack(side="bottom", anchor="se")
sizegrip2.pack(side="bottom", anchor="se")
root.mainloop()
def demo4():
"""PanedWindow showhandle=True参数自带"""
root = Tk()
root.geometry("500x500")
panedwindow0 = PanedWindow(root, showhandle=True, relief="sunken", orient="vertical")
panedwindow0.pack()
panedwindow1 = PanedWindow(panedwindow0, showhandle=True, relief="sunken")
panedwindow2 = PanedWindow(panedwindow0, showhandle=True, relief="sunken")
panedwindow0.add(panedwindow1)
panedwindow0.add(panedwindow2)
bun1 = Button(panedwindow1, text="111")
bun2 = Entry(panedwindow1); bun2.insert(END, "222")
bun3 = Label(panedwindow1, text="333")
bun4 = Text(panedwindow1); bun4.insert(END, "444")
bun5 = Button(panedwindow2, text="555")
bun6 = Entry(panedwindow2); bun6.insert(END, "666")
bun7 = Label(panedwindow2, text="777")
bun8 = Text(panedwindow2); bun8.insert(END, "888")
panedwindow1.add(bun1)
panedwindow1.add(bun2)
panedwindow1.add(bun3)
panedwindow1.add(bun4)
panedwindow2.add(bun5)
panedwindow2.add(bun6)
panedwindow2.add(bun7)
panedwindow2.add(bun8)
sizegrip = ttk.Sizegrip(panedwindow0)
panedwindow0.add(sizegrip)
root.mainloop()
def add_widget(master):
bun1 = Button(master, text="111")
bun2 = Entry(master);
bun2.insert(END, "222")
bun3 = Label(master, text="333")
bun4 = Text(master);
bun4.insert(END, "444")
bun1.pack()
bun2.pack()
bun3.pack()
bun4.pack()
if __name__ == '__main__':
# demo1()
# demo2()
# demo3()
demo4()