PyGTK ButtonBox类

PyGTK ButtonBox类

gtk API中的ButtonBox类作为容器的基类,可以在水平或垂直方向上容纳多个按钮。两个子类HButtonBox和VButtonBox是从ButtonBox类派生出来的,它本身是gtk.Box类的一个子类。

一个按钮盒被用来在整个应用程序中提供一个一致的按钮布局。它提供了一个默认的布局和一个默认的间距值,在所有的widget中都是持久的。

gtk.Box类的 set_spacing() 方法可以用来改变按钮框中按钮之间的默认间距。

按钮的默认布局可以通过 set_default() 方法来改变。按钮布局的可能值是–

  • gtk.BUTTONBOX_SPREAD

  • gtk.BUTTONBOX_EDGE

  • gtk.BUTTONBOX_START

  • gtk.BUTTONBOX_END.

例子

在下面的例子中,顶层窗口内的VBox对象内部包含一个VButtonBox对象和一个HButtonBox对象,每个对象包含两个按钮,分别垂直和水平排列。

观察代码 –

import gtk

class PyApp(gtk.Window):
   def __init__(self):
      super(PyApp, self).__init__()

      self.set_title("Button Box demo")
      self.set_size_request(200,100)
      self.set_position(gtk.WIN_POS_CENTER)
      vb = gtk.VBox()
      box1 = gtk.VButtonBox()
      btn1 = gtk.Button(stock = gtk.STOCK_OK)
      btn2 = gtk.Button(stock = gtk.STOCK_CANCEL)

      box1.pack_start(btn1, True, True, 0)
      box1.pack_start(btn2, True, True, 0)
      box1.set_border_width(5)

      vb.add(box1)
      box2 = gtk.HButtonBox()
      btn3 = gtk.Button(stock = gtk.STOCK_OK)
      btn4 = gtk.Button(stock = gtk.STOCK_CANCEL)

      ent = gtk.Entry()
      box2.pack_start(btn3, True, True, 0)
      box2.pack_start(btn4, True, True, 0)
      box1.set_border_width(5)

      vb.add(box2)
      self.add(vb)
      self.show_all()

PyApp()
gtk.main()

上述代码产生了以下输出 —

PyGTK - ButtonBox类

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程