首頁 >後端開發 >Python教學 >如何在 Tkinter 中有效管理幾何圖形來組織我的 GUI?

如何在 Tkinter 中有效管理幾何圖形來組織我的 GUI?

Patricia Arquette
Patricia Arquette原創
2024-12-07 04:50:15932瀏覽

How Can I Effectively Manage Geometry in Tkinter to Organize My GUI?

Tkinter - 幾何管理基礎

Tkinter 上的許多問題不是關於錯誤,而是關於如何組織圖形使用者介面(圖形用戶介面).本文旨在提供對 Tkinter 幾何管理的基礎了解,並指導初學者組織 GUI。

頂層視窗設定

  • wm_geometry :指定主視窗在螢幕上的大小和位置screen.
  • wm_minsize, wm_maxsize:設定最小或最大尺寸限制。
  • wm_ressized:啟用或停用使用者調整大小。
  • wm_attributes:配置屬性,例如最頂層或全螢幕。
  • pack_propagate、grid_propagate:忽略子視窗小工具要求的寬度和高度。

排列子組件

Tkinter 提供了三個主要的幾何管理器來排列子部件在頂級中:

  • 打包器:將小部件排列在父級的邊緣周圍。
  • 放置器:修復小部件的精確位置父級中的大小和位置。
  • Gridder:將小部件放置在父級中的行和列中。

特定於管理器的功能

每個管理器都提供獨特的功能功能:

Packer:

  • 填充:水平、垂直或兩者都拉伸小部件。
  • expand:填滿可用空間
  • side:控制小部件對齊到父級的一側。
  • anchor:將小部件放置在其內部space.

Placer:

  • Placer:
  • relheight, relwidth:指定相對於父級的小部件尺寸。

relx、rely:相對於父級的位置小部件

  • Gridder:
  • columns、>columns、>columns、 rowspan:將小部件跨過多列或多行。
  • sticky:將小部件放置在其內部單元格。

grid_remove

:刪除小工具而不遺失配置。

import tkinter as tk

root = tk.Tk()

holderframe = tk.Frame(root, bg='red')
holderframe.pack()

display = tk.Frame(holderframe, width=600, height=25, bg='green')
display2 = tk.Frame(holderframe, width=300, height=145, bg='orange')
display3 = tk.Frame(holderframe, width=300, height=300, bg='black')
display4 = tk.Frame(holderframe, width=300, height=20, bg='yellow')
display5 = tk.Frame(holderframe, bg='purple')

# Arrange using Pack within `display`
display.pack()
b = tk.Button(display, width=10, text='b')
b1 = tk.Button(display, width=10, text='b1')
l = tk.Label(display, text='My_Layout', bg='grey')
b.pack(side='left')
b1.pack(side='left')
l.pack(fill='both', expand=1)

# Arrange using Grid within `display2`
display2.grid(column=0, row=1, sticky='n')
lab = tk.Label(display2, text='test2')
lab.grid(column=0, row=0)
# ... additional labels arranged in rows and columns using grid()

# Arrange using Place for `display5`
display5.place(x=0, y=170, relwidth=0.5, height=20)

root.mainloop()

範例用法

考慮以下內容顯示如何使用這三個範例管理器:

結論

透過了解Tkinter幾何管理的基礎知識和每個管理器的功能,您可以有效地組織和安排子部件創建實用且美觀的 GUI。

以上是如何在 Tkinter 中有效管理幾何圖形來組織我的 GUI?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn