PyGTK-컨테이너
PyGTK 라이브러리는 창 내부의 위젯 배치를 제어하기 위해 다양한 컨테이너 클래스를 제공합니다. 가장 쉬운 방법은fixed container class 픽셀 단위로 측정 된 절대 좌표를 지정하여 위젯을 그 안에 배치합니다.
이제 다음 단계를 따르십시오.
Step 1 −의 개체를 선언 fixed class
fixed = gtk.Fixed()
Step 2 − 버튼 위젯을 생성하고 다음을 사용하여 고정 컨테이너에 추가합니다. put()x 및 y 좌표가 필요한 방법. 여기서 버튼은 (100,100) 위치에 배치됩니다.
btn = gtk.Button("Hello")
fixed.put(btn, 100,100)
Step 3− 고정 컨테이너에 여러 컨트롤을 배치 할 수 있습니다. 그리고이를 최상위 창에 추가하고show_all() 방법
self.add(fixed)
self.show_all()
그러나이 Absolute Layout은 다음과 같은 이유로 적합하지 않습니다.
- 창 크기를 조정해도 위젯의 위치는 변경되지 않습니다.
- 해상도가 다른 다른 디스플레이 장치에서는 모양이 균일하지 않을 수 있습니다.
- 전체 양식을 다시 디자인해야 할 수 있으므로 레이아웃 수정이 어렵습니다.
다음은 original window −
다음은 resized window −
여기서 버튼의 위치는 변경되지 않습니다.
PyGTK API는 컨테이너 내부의 위젯 위치 관리를 강화하기위한 컨테이너 클래스를 제공합니다. 절대 위치보다 레이아웃 관리자의 장점은 다음과 같습니다.
- 창 안의 위젯은 자동으로 크기가 조정됩니다.
- 해상도가 다른 디스플레이 장치에서 균일 한 외관을 보장합니다.
- 재 설계하지 않고도 위젯을 동적으로 추가하거나 제거 할 수 있습니다.
gtk.Container는 다음 클래스의 기본 클래스로 작동합니다.
- gtk.ButtonBox
- gtk.Box
- gtk.Alignment
- gtk.EventBox
- gtk.Table