Pygtk-frame-class

提供:Dev Guides
移動先:案内検索

PyGTK-フレームクラス

フレームクラスは、gtk.Binクラスのサブクラスです。 配置された子ウィジェットの周りに装飾的な境界線を描画します。 フレームには、位置をカスタマイズできるラベルを含めることができます。

gtk.Frameオブジェクトは、次のコンストラクタの助けを借りて構築されます-

frame = gtk.Frame(label = None)

以下は、gtk.Frame()クラスのメソッドです-

  • * set_label(text)-これは、 *text で指定されたラベルを設定します。 *なし*の場合、現在のラベルは削除されます。
  • * 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の3つのオブジェクトのグループは、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()

上記のコードは、次の出力を生成します-

フレームデモ