PyGTK-정렬 클래스

이 위젯은 자식 위젯의 정렬과 크기를 제어하는 ​​데 유용합니다. xalign, yalign, xscale 및 yscale이라는 네 가지 속성이 있습니다. scale 속성은 자식 위젯에서 사용할 여유 공간의 양을 지정합니다. 정렬 속성은 사용 가능한 영역 내에 자식 위젯을 배치하는 데 사용됩니다.

네 가지 속성은 모두 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 − Is는 자식 위젯이 흡수하는 수평 여유 공간의 비율입니다.

  • yscale − Is는 자식 위젯이 흡수하는 수직 여유 공간의 비율입니다.

예

다음 코드는 gtk.alignment 위젯의 사용을 보여줍니다. 최상위 창의 Vbox에는 상단 Vbox와 하단 Hbox가 있습니다. 상단 수직 상자에는 레이블과 Entry 위젯이 배치되어 왼쪽을 향하면 50 %의 공간이 무료로 유지되고 0.5 xalign 및 0.25를 yalign 속성에 할당하여이 중 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()

위의 코드는 다음 출력을 생성합니다.