GTK+ 2.0 教學-封裝元件

在建立一個應用程式的時候,你會想要將一個以上的元件放入一個視窗,我們第一個helloworld範例只使用一個元件所以我們可以簡單地使用 gtk_container_add()呼叫來”封裝”元件到視窗內,但是當你想要放更多的元件進入視窗的時候,你要如何控制元件的位置?這裡就是進入封裝的地方。

封裝盒的原理

多數封裝是通過創建一些「盒(boxes)」來達成的,這是些不可見的元件容器,它們有兩種形式:一種是橫向盒(horizontal box),一種是縱向盒(vertical box)。當我們封裝元件到橫向盒裡時,這些元件就依著我們呼叫的順序由左至右或從右到左水平地插入進去。在縱向盒裡,則從頂部到底部或相反地封裝元件, 你可以使用任意的盒組合,比如盒套盒或者盒挨著盒,用以產生你想要的效果。

要創建一個新的橫向盒我們呼叫 gtk_hbox_new(),對於縱向盒,用 gtk_vbox_new()。gtk_box_pack_start() 和 gtk_box_pack_end() 函式用來將物件封裝到這些容器中。gtk_box_pack_start() 將物件從上到下封裝到縱向盒中,或者從左到右封裝到橫向盒中。gtk_box_pack_end() 則相反,從下到上封裝到縱向盒中,或者從右到左封裝到橫向盒中。使用這些函式允許我們調整自己的元件向左或向右對齊,同時也可以混入一些其它的方法來達到我們想要的設計效果。在我們的範例中多數使用 gtk_box_pack_start()。被封裝的對象可以是另一個容器或元件。事實上,許多元件本身就是容器,包括按鈕,只不過我們通常在按鈕中只放入一個標籤。

通過使用這些呼叫,GTK 就會知道要把元件放到哪裡去,並且會自動做調整大小及其它美化的事情。至於如何封裝你的元件這裡還有一些選項。正如你能想到的,在放置和創建元件時,這些方法給了我們很多的彈性。

感謝你看到這裡,很快就可以離開了,但最好的獎勵行動就是按一下幫我分享或留言,感恩喔~

點我分享到Facebook

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *