- 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()
上述代码产生以下输出:
广告