亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

標(biāo)題: GTK窗口布局管理------TABLE和BOX [打印本頁]

作者: liuda    時(shí)間: 2015-1-23 19:58
標(biāo)題: GTK窗口布局管理------TABLE和BOX
GTK窗口布局管理控件常用到有兩個(gè)box和table。box即盒子,有水平和垂直之分,故box只能針對控件進(jìn)行一維空間布局,對二維空間來講,box顯得很笨重。
table即表,就是說把控件的空間布局看作是一張表,很好到利用了平面坐標(biāo)的原理。其實(shí)它就是通過使用多個(gè)vbox和hbox來實(shí)現(xiàn)控件到排列。

box的創(chuàng)建方法:
vbox = gtk_vbox_new(TRUE, 1);上面程序中生成了GtkVBox。 我們把其中的第一個(gè)參數(shù)設(shè)置為 TRUE。這就意味著,程序中我的按鈕都為同樣的大小。至于按鈕之間的距離大小被設(shè)置為“1”象素。
settings = gtk_button_new_with_label("Settings");
gtk_box_pack_start(GTK_BOX(vbox), settings, TRUE, TRUE, 0);在上面的程序中我們把“settings “按鈕布局在vbox容器構(gòu)件中。 至于函數(shù)實(shí)參中的前兩個(gè)參數(shù),分別是容器構(gòu)件和我們要放置的子構(gòu)件。接下來的三個(gè)參數(shù)中分別是expand, fill和padding。 值得注意的是如果fill對應(yīng)的參數(shù)是FALSE,則按鈕就不會充滿整個(gè)vbox構(gòu)件。比較類似的是,如果之前在gtk_vbox_new(TRUE, 1);已經(jīng)設(shè)置按鈕都是等寬高了,所以expand對應(yīng)的參數(shù),是完全沒有效果的。(譯者注:此處建議fill expand都設(shè)為TRUE,至于具體區(qū)別和含義可在編程時(shí)感受)
table的創(chuàng)建方法:
pHtable = gtk_table_new(4, 3, TRUE)上面程序創(chuàng)建了一個(gè)4行3列的容器。
pHlable[0] = gtk_label_new("Test1");
pHlable[1] = gtk_label_new("Test2");
pHlable[2] = gtk_label_new("Test3");
pHlable[3] = gtk_label_new("Test4");
pHedit = gtk_entry_new();
        
gtk_table_attach(GTK_TABLE(pHtable),pHlable[0],0,1,0,1,GTK_EXPAND, GTK_EXPAND, 0, 0);
gtk_table_attach(GTK_TABLE(pHtable),pHlable[1],1,2,0,1,GTK_EXPAND, GTK_EXPAND, 0, 0);
gtk_table_attach(GTK_TABLE(pHtable),pHlable[2],2,3,0,1,GTK_EXPAND, GTK_EXPAND, 0, 0);
gtk_table_attach(GTK_TABLE(pHtable),pHlable[3],1,2,1,2,GTK_EXPAND, GTK_EXPAND, 0, 0);
gtk_table_attach(GTK_TABLE(pHtable),pHedit,2,3,2,3,GTK_EXPAND, GTK_EXPAND, 0, 0);上面的代碼創(chuàng)建了4個(gè)label和一個(gè)edit控件,并分別布局在如下圖所示到table中。
上面代碼的gtk_table_attach(GTK_TABLE(pHtable),pHlable[0],0,1,0,1,GTK_EXPAND, GTK_EXPAND, 0, 0)的第3到6個(gè)參數(shù)共4個(gè)參數(shù)分別表示控件在table中的左上角和右上角的橫坐標(biāo)以及左下角和左下角縱坐標(biāo)值。
0              1              2          3
0+----------+----------+----------+
|              |              |              |
1+----------+----------+----------+
|              |              |              |
2+----------+----------+----------+
|              |              |              |
3+----------+----------+----------+
|              |              |              |
4+----------+----------+----------+





歡迎光臨 (http://www.denmoz.com/bbs/) Powered by Discuz! X3.1