Pygtk-alignment-class

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

PyGTK-アライメントクラス

このウィジェットは、子ウィジェットの配置とサイズを制御するのに役立ちます。 xalign、yalign、xscale、yscaleという4つのプロパティがあります。 スケールプロパティは、子ウィジェットが使用する空きスペースの量を指定します。 alignプロパティは、使用可能な領域内に子ウィジェットを配置するために使用されます。

4つのプロパティはすべて、0〜1.0の浮動小数点値を取ります。 xscaleプロパティとyscaleプロパティが0に設定されている場合、ウィジェットは空きスペースをまったく吸収せず、1に設定されている場合、ウィジェットは最大空きスペースをそれぞれ水平または垂直に吸収します。

0に設定されている場合、xalignおよびyalignプロパティは、ウィジェットの左または上に空きスペースがないことを意味します。 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が配置されています。 上部の垂直ボックスでは、ラベルと入力ウィジェットが左に向かって配置され、50%のスペースが解放され、25%以上が0.5 xalignおよび0.25をyalignプロパティに割り当てることで占有されます。

下部のHBoxでは、使用可能なすべての空き領域が左側にあります。 これは、xalignプロパティに1を割り当てることで実現されます。 したがって、水平ボックス内の2つのボタンは右揃えで表示されます。

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()

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

アライメントデモ