我有一个非常简单的代码,创建一个GtkWindow并在其中放置一个GtkButton。

window = gtk_window_new(GTK_WINDOW_TOPLEVEL);

gtk_widget_set_size_request(_window, 800, 450);
gtk_window_set_decorated(GTK_WINDOW (_window), FALSE);
gtk_window_set_position(GTK_WINDOW (_window),GTK_WIN_POS_CENTER_ALWAYS);
gtk_window_set_resizable(GTK_WINDOW (_window), FALSE);

_startbutton = gtk_button_new_with_label("myLabel");
gtk_container_add(GTK_CONTAINER(_window), _startbutton);

gtk_widget_show_all(_window);

然而,这并不像预期的那样工作,因为按钮填满了整个窗口。
我试图找到一种改变按钮大小的方法,但是我找到的所有方法都使用了一些不推荐使用的方法。。。
有人能给我解释一下怎么做吗?

最佳答案

因为GtkButton是gtkWindows中的唯一控件,所以它将被赋予gtkWindows的整个要填充的区域如果要执行更复杂的操作,则需要使用布局容器(如GtkBox和GtkGrid)显式布局按钮,通常与窗口中也具有的其他控件相关。
一旦设置好控件,就可以使用expansion and alignment来控制按钮如何利用其分配的空间。

07-24 14:15