pygtk笔记--2.1:布局容器,VBox、Hbox、Alignment
生活随笔
收集整理的這篇文章主要介紹了
pygtk笔记--2.1:布局容器,VBox、Hbox、Alignment
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
我們使用一些軟件的時候發現,軟件上的按鈕,圖標,輸入框等部件,擺放的井井有條。就算是我們改變軟件窗體的大小,那些部件依然能適應我們的調整,以最優美的形式展現出來。這里就用到了布局管理
布局管理就是替你管理組件顯示樣式、位置等內容的
這里先介紹兩個組件:?
label=gtk.Label('這個組件負責顯示文字')?
button=gtk.Label('這個組件負責顯示一個按鈕')
VBox,HBox,Alignment:
VBox -- 縱向盒子布局
HBox -- 橫向盒子布局
Alignment --??控制子部件的顯示位置、大小(只能有一個子部件)
下面展示一個使用了以上幾個部件做出來的簡單效果:
?
分解:
?
- 綠色部分是一個VBox
- 每一個紅色部分是一個HBox
- 黃色部分是一個Aligenment
代碼們:
#coding=utf-8 __author__ = '一個胖子'import gtkclass VHA(gtk.Window):def __init__(self):super(VHA,self).__init__()self.set_size_request(500,300)self.set_position(gtk.WIN_POS_CENTER)self.set_title('模擬一個麻將桌的布局')self._init_child()self.connect('destroy',gtk.main_quit)self.show_all()def _init_child(self):vbox=gtk.VBox(False,3)l1=gtk.Label('角')l1.set_size_request(20,20)l2=gtk.Label('角')l2.set_size_request(20,20)l3=gtk.Label('角')l3.set_size_request(20,20)l4=gtk.Label('角')l4.set_size_request(20,20)l5=gtk.Label('這個放在中間')calign=gtk.Alignment(0.3,0,0,0.3)calign.add(l5)b1=gtk.Button('北')b2=gtk.Button('西')b3=gtk.Button('東')b4=gtk.Button('南')hbox1=gtk.HBox(False,3)hbox1.pack_start(l1,False,False)hbox1.pack_start(b1)hbox1.pack_start(l2,False,False)vbox.pack_start(hbox1,False,False)hbox2=gtk.HBox(False,3)hbox2.pack_start(b2,False,False)hbox2.pack_start(calign)hbox2.pack_start(b3,False,False)vbox.pack_start(hbox2)hbox3=gtk.HBox(False,3)hbox3.pack_start(l3,False,False)hbox3.pack_start(b4)hbox3.pack_start(l4,False,False)vbox.pack_start(hbox3,False,False)self.add(vbox)if __name__=='__main__':VHA()gtk.main()?
關鍵點解釋:
?
?
轉載于:https://my.oschina.net/u/222523/blog/162938
總結
以上是生活随笔為你收集整理的pygtk笔记--2.1:布局容器,VBox、Hbox、Alignment的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux文件目录结构2
- 下一篇: iOS培训教程——创建第一级控制器