2015-07-10 82 views
0

有一個Gtk::Grid並試圖做到以下幾點:在gtkmm中將圖像添加到網格的正確方法是什麼?

Gtk::Image *im; 
for(int i=0; i<10; ++i) 
{ 
    for(int j=0; j<10; ++j) 
    { 
     im = Gtk::manage(new Gtk::Image()); 
     im->set("test.jpeg"); 
     grid->attach(*im, i, j, 40, 40); 
    } 
} 

的問題是,它會產生一些很奇怪:

Strange result

的目標是具有相同的圖像分別加入。

回答

2

Gtk::Grid::attach()的默認說明很混亂。最後兩個屬性標記爲「寬度」和「高度」,它可以預期表示添加的Widget的像素維數。但是,這並不是這些參數所代表的意思。

實際上它們是指更接近「跨度」的東西。將這些值代入1會得到正確的結果。

Gtk::Image *im; 
for(int i=0; i<10; ++i) 
{ 
    for(int j=0; j<10; ++j) 
    { 
     im = Gtk::manage(new Gtk::Image()); 
     im->set("test.jpeg"); 
     grid->attach(*im, i, j, 1, 1); 
    } 
} 
相關問題