2013-06-25 92 views
0

我記得C有一個公式自動填充一個帶按鈕的網格,我找不到找到它的頁面,有人可以幫我解決這個問題嗎?我記得有兩個FOR在使用。它是GTK + 3.0和C.如何用按鈕填充gtk網格?

+0

什麼是你的代碼?您是否將按鈕添加到hbox或vbox? – mattn

+1

當然,應該有兩個'for'循環,每個列一個,一個行。 – LiuLang

+0

我從gtk_builder_get_object的glade文件中獲取網格。網格位於hbox上。 – user2453107

回答

0

像這樣:

// insert 9 buttons to a grid, 3x3. 
void fill_grid_with_buttons(GtkWidget *grid) 
{ 
    GtkWidget *button; 
    int i, j; 

    for (i = 0; i < 3; i += 1) { 
    for (j = 0; j < 3; j += 1) { 
     button = gtk_button_new_with_label ("label"); 
     gtk_grid_attach (GTK_GRID (grid), button, i, j, 1, 1); 
    } 
    } 
} 
+0

我和你一樣,我沒有錯誤,但程序不會啓動。 GtkWidget * grid1,* grid2; GtkWidget *按鈕[145]; int i,j,k = 0; grid1 = GTK_WIDGET(gtk_builder_get_object(builder,「grid1」));對於(j = 0; i <13; j ++){ \t \t button [k] = gtk_button_new();對於(i = 0; i <13; i ++){ gtg_grid_attach(grid1,button [k],i,j,1,1); \t \t k ++; \t} } – user2453107

+0

對不起,不知道如何格式化文本顯示爲一個代碼塊:( – user2453107

+0

好吧,我上傳整個演示代碼github上它可以在這裏找到。https://github.com /六郎/ GTK的測試/樹/主/網格填充與 - 按鈕 – LiuLang