本文目錄一覽:
用python 畫一個網格
print 函數是輸出字元串,所以用 print 輸出形成的 grid 其實質是具有某特定形狀的 字元串 ,而 plt.grid() 繪製出的網格是 圖片。
字元串 是可以用文字處理軟體(如 word、記事本等)直接編輯處理的,而 圖片 則只能用圖片編輯軟體(如畫筆)打開處理。
如問題所要求的最簡單的「編寫一個能畫出如下網格(grid)的函數」代碼,可以簡單的用 print 函數就可以了:
代碼執行效果:
python寫窗口用grid進行布局,那怎麼加入背景圖?
什麼時候使用Grid管理器
grid管理器是Tkinter裡面最靈活的幾何管理布局器。如果你不確定什麼情況下從三種布局管理中選擇,你至少要保證自己會使用grid。
當你設計對話框的時候,grid布局管理器是一個非常方便的工具。如果你之前使用pack進行布局的話,你會被使用grid後的簡潔而震驚。與適應很多frame來讓pack工作不同,在大多數情況下,你只需要將所有控制項放置到容器中,然後使用grid將它們布局到任何你想要布局的地方。
參考下面這個例子:
python tkinter grid 網格
from tkinter import *
colors = [‘red’, ‘green’, ‘orange’, ‘white’, ‘yellow’, ‘blue’]
r = 0
for c in colors:
Label(text=c, relief=RIDGE, width=25).grid(row=r, column=0)
Entry(bg=c, relief=SUNKEN, width=50).grid(row=r, column=1)
r += 1
///sticky=NSEW,rowconfigure擴展
“add a label on the top and form resizing”
from tkinter import *
colors = [‘red’, ‘white’, ‘blue’]
def gridbox(root):
Label(root, text=’Grid’).grid(columnspan=2)
row = 1
for color in colors:
lab = Label(root, text=color, relief=RIDGE, width=25)
ent = Entry(root, bg=color, relief=SUNKEN, width=50)
lab.grid(row=row, column=0, sticky=NSEW)
ent.grid(row=row, column=1, sticky=NSEW)
root.rowconfigure(row, weight=1)
row += 1
root.columnconfigure(0, weight=1)
root.columnconfigure(1, weight=1)
def packbox(root):
Label(root, text=’Pack’).pack()
for color in colors:
row = Frame(root)
lab = Label(row, text=color, relief=RIDGE, width=25)
ent = Entry(row, bg=color, relief=SUNKEN, width=50)
row.pack(side=TOP, expand=YES, fill=BOTH)
lab.pack(side=LEFT, expand=YES, fill=BOTH)
ent.pack(side=RIGHT, expand=YES, fill=BOTH)
root = Tk()
gridbox(Toplevel(root))
packbox(Toplevel(root))
Button(root, text=’Quit’, command=root.quit).pack()
mainloop()
columnspan=2 跨兩行 row column
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/239539.html