这是我的代码:
#include<gtk/gtk.h>
int main(int argc,char**argv)
{
GtkWidget* window, *button, *grid;
gtk_init(&argc,&argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size(GTK_WINDOW(window),100,100);
g_signal_connect(G_OBJECT(window),"destroy",G_CALLBACK(gtk_main_quit),NULL);
//gtk_container_set_border_width(GTK_CONTAINER(window),10);
gtk_window_set_resizable(GTK_WINDOW(window), FALSE);
grid = gtk_grid_new();
button = gtk_button_new_with_label("1");
gtk_grid_attach(GTK_GRID(grid), button, 0,0, 100, 1);
gtk_grid_set_column_homogeneous(GTK_GRID(grid), TRUE);
gtk_grid_set_row_homogeneous(GTK_GRID(grid), TRUE);
button = gtk_button_new_with_label("1");
gtk_grid_attach(GTK_GRID(grid), button,0, 1, 10, 1);
gtk_container_add(GTK_CONTAINER(window), grid);
gtk_widget_show_all(window);
gtk_main();
return 0;
}
此代码的结果是:gtk_grid_attach(GTK_GRID(grid), button,0, 1, 100, 1)
当我将gtk_grid_attach(GTK_GRID(grid),button,0,1,100,1)更改为gtk_grid_attach(GTK_GRID(grid),button,0,1,200,1)那么此代码的结果是:gtk_grid_attach(GTK_GRID(grid), button,0, 1, 200, 1)
为什么窗口的宽度增加?我发现窗口的大小可能会随gtk_grid_attach()函数而变化。那么如何解决呢?
为什么窗口的宽度增加?