- PyGTK 教程
 - PyGTK - 主页
 - PyGTK - 简介
 - PyGTK - 环境
 - PyGTK - 你好世界
 - PyGTK - 重要类
 - PyGTK - 窗口类
 - PyGTK - 按钮类
 - PyGTK - 标签类
 - PyGTK - 入门级
 - PyGTK - 信号处理
 - PyGTK - 事件处理
 - PyGTK - 容器
 - PyGTK - 盒子类
 - PyGTK - ButtonBox 类
 - PyGTK - 对齐类
 - PyGTK - EventBox 类
 - PyGTK - 布局类
 - PyGTK - 组合框类
 - PyGTK - ToggleButton 类
 - PyGTK - CheckButton 类
 - PyGTK - 单选按钮类
 - PyGTK - 菜单栏、菜单和菜单项
 - PyGTK - 工具栏类
 - PyGTK - 调整类
 - PyGTK - 范围类
 - PyGTK - 规模类
 - PyGTK - 滚动条类
 - PyGTK - 对话框类
 - PyGTK - 消息对话框类
 - PyGTK - AboutDialog 类
 - PyGTK - 字体选择对话框
 - PyGTK - 颜色选择对话框
 - PyGTK - 文件选择器对话框
 - PyGTK - 笔记本类
 - PyGTK - 框架类
 - PyGTK - AspectFrame 类
 - PyGTK - TreeView 类
 - PyGTK - 窗格类
 - PyGTK - 状态栏类
 - PyGTK - ProgressBar 类
 - PyGTK - 视口类
 - PyGTK - 滚动窗口类
 - PyGTK - 箭头类
 - PyGTK - 图像类
 - PyGTK - DrawingArea 类
 - PyGTK - SpinButton 类
 - PyGTK - 日历类
 - PyGTK - 剪贴板类
 - PyGTK - 标尺类
 - PyGTK - 超时
 - PyGTK - 拖放
 
- PyGTK 有用资源
 - PyGTK - 快速指南
 - PyGTK - 有用的资源
 - PyGTK - 讨论
 
PyGTK - 框架类
Frame 类是 gtk.Bin 类的子类。它在放置在其中的子小部件周围绘制装饰边框。框架可以包含其位置可以定制的标签。
gtk.Frame 对象是在以下构造函数的帮助下构造的 -
frame = gtk.Frame(label = None)
以下是 gtk.Frame() 类的方法 -
set_label(text) - 设置由text指定的标签。如果None,则删除当前标签。
set_label_widget() - 这将除 gtk.Label 之外的小部件设置为框架的标签。
set_label_align(x, y) - 设置框架标签小部件和装饰的对齐方式(默认值为 0.0 和 0.5)
set_shadow_type() - 设置框架的阴影类型。
可能的值为 -
- gtk.SHADOW_NONE
 - gtk.SHADOW_IN
 - gtk.SHADOW_OUT
 - gtk.SHADOW_ETCHED_IN
 - tk.SHADOW_ETCHED_OUT
 
以下代码演示了 Frame 小部件的功能。一组 gtk.RadioButton 的三个对象被放置在 HButtonBox 中。
btn1 = gtk.RadioButton(None,"Degree") btn2 = gtk.RadioButton(btn1,"P.G.") btn3 = gtk.RadioButton(btn1,"Doctorate") hb = gtk.HButtonBox() hb.add(btn1) hb.add(btn2) hb.add(btn3)
为了在框周围绘制边框,将其放置在框架小部件中,并将其添加到顶层窗口。
frm = gtk.Frame() frm.add(hb) self.add(frm)
例子
观察以下代码 -
import gtk
class PyApp(gtk.Window):
   def __init__(self):
      super(PyApp, self).__init__()
      self.set_title("Frame Demo")
      self.set_default_size(250, 200)
      self.set_border_width(5)
      frm = gtk.Frame()
      hb = gtk.HButtonBox()
      btn1 = gtk.RadioButton(None,"Degree")
      hb.add(btn1)
      btn2 = gtk.RadioButton(btn1,"P.G.")
      hb.add(btn2)
      btn3 = gtk.RadioButton(btn1,"Doctorate")
      hb.add(btn3)
      frm.add(hb)
      frm.set_label("Qualifications")
      self.add(frm)
      self.connect("destroy", gtk.main_quit)
      self.show_all()
if __name__ == '__main__':
   PyApp()
   gtk.main()
上面的代码将生成以下输出 -
