- PyGTK 教程
- PyGTK - 首頁
- PyGTK - 簡介
- PyGTK - 環境配置
- PyGTK - Hello World
- PyGTK - 重要類
- PyGTK - 視窗類
- PyGTK - 按鈕類
- PyGTK - 標籤類
- PyGTK - 輸入框類
- PyGTK - 訊號處理
- PyGTK - 事件處理
- PyGTK - 容器
- PyGTK - 箱式容器類
- PyGTK - 按鈕盒類
- PyGTK - 對齊類
- PyGTK - 事件盒類
- PyGTK - 佈局類
- PyGTK - 組合框類
- PyGTK - 開關按鈕類
- PyGTK - 複選框類
- PyGTK - 單選按鈕類
- PyGTK - 選單欄、選單和選單項
- PyGTK - 工具欄類
- PyGTK - 調整類
- PyGTK - 範圍類
- PyGTK - 刻度類
- PyGTK - 捲軸類
- PyGTK - 對話方塊類
- PyGTK - 訊息對話方塊類
- PyGTK - 關於對話方塊類
- PyGTK - 字型選擇對話方塊
- PyGTK - 顏色選擇對話方塊
- PyGTK - 檔案選擇對話方塊
- PyGTK - 筆記本類
- PyGTK - 框架類
- PyGTK - 帶比例的框架類
- PyGTK - 樹狀檢視類
- PyGTK - 面板類
- PyGTK - 狀態列類
- PyGTK - 進度條類
- PyGTK - 視口類
- PyGTK - 滾動視窗類
- PyGTK - 箭頭類
- PyGTK - 圖片類
- PyGTK - 繪圖區類
- PyGTK - 旋轉按鈕類
- PyGTK - 日曆類
- PyGTK - 剪貼簿類
- PyGTK - 標尺類
- PyGTK - 超時
- PyGTK - 拖放
- PyGTK 有用資源
- PyGTK - 快速指南
- PyGTK - 有用資源
- PyGTK - 討論
PyGTK - 對齊類
此部件在控制其子部件的對齊和大小方面非常有用。它具有四個屬性:xalign、yalign、xscale 和 yscale。scale 屬性指定子部件將使用多少可用空間。align 屬性用於將子部件放置在可用區域內。
所有四個屬性都取 0 到 1.0 之間的浮點值。如果 xscale 和 yscale 屬性設定為 0,則表示部件不吸收任何可用空間;如果設定為 1,則部件分別水平或垂直吸收最大可用空間。
如果 xalign 和 yalign 屬性設定為 0,則表示部件左側或上方沒有可用空間。如果設定為 1,則部件左側或上方將有最大可用空間。
gtk.alignment 類具有以下建構函式:
gtk.alignment(xalign = 0.0, yalign = 0.0, xscale = 0.0, yscale = 0.0)
其中:
xalign - 是子部件左側水平可用空間的分數。
yalign - 是子部件上方垂直可用空間的分數。
xscale - 是子部件吸收的水平可用空間的分數。
yscale - 是子部件吸收的垂直可用空間的分數。
示例
以下程式碼演示了 gtk.alignment 部件的使用。頂級視窗中的 Vbox 包含一個上方的 Vbox 和一個下方的 Hbox。在上方的垂直框中,放置一個標籤和一個 Entry 部件,以便在左側保留 50% 的空間,並透過將 xalign 屬性設定為 0.5,yalign 屬性設定為 0.25 來佔據超過 25% 的空間。
在下方的 HBox 中,所有可用的可用空間都在左側。這是透過將 xalign 屬性設定為 1 來實現的。因此,水平框中的兩個按鈕顯示為右對齊。
import gtk
class PyApp(gtk.Window):
def __init__(self):
super(PyApp, self).__init__()
self.set_title("Alignment demo")
self.set_size_request(400,200)
self.set_position(gtk.WIN_POS_CENTER)
vbox = gtk.VBox(False, 5)
vb = gtk.VBox()
hbox = gtk.HBox(True, 3)
valign = gtk.Alignment(0.5,0.25, 0, 0)
lbl = gtk.Label("Name of student")
vb.pack_start(lbl, True, True, 10)
text = gtk.Entry()
vb.pack_start(text, True, True, 10)
valign.add(vb)
vbox.pack_start(valign)
ok = gtk.Button("OK")
ok.set_size_request(70, 30)
close = gtk.Button("Close")
hbox.add(ok)
hbox.add(close)
halign = gtk.Alignment(1, 0, 0, 0)
halign.add(hbox)
vbox.pack_start(halign, False, False, 3)
self.add(vbox)
self.connect("destroy", gtk.main_quit)
self.show_all()
PyApp()
gtk.main()
上述程式碼產生以下輸出:
廣告