GTK+编程中怎样自由控制按钮大小

软件和网站开发以及相关技术探讨
回复
wjhbh
帖子: 50
注册时间: 2009-01-08 18:53

GTK+编程中怎样自由控制按钮大小

#1

帖子 wjhbh » 2009-04-06 18:49

我用了gtk_widget_set_size_request(),好像不行,只控制了高度,宽度不起作用,还是跟着窗口涨。相关代码如下
GtkWidget *button;
GtkWidget *vbox;
...
button = gtk_button_new_with_label("ok");
gtk_widget_set_size_request(button,50,30);
...
gtk_box_pack_start(GTK_BOX(vbox),button,FALSE,FALSE,5);
...
显示窗口时,按钮高度是正确的,但宽度却随着窗口宽度填充,不能固定为50,不知为何?
头像
hecha
帖子: 364
注册时间: 2007-09-23 13:36

Re: GTK+编程中怎样自由控制按钮大小

#2

帖子 hecha » 2009-04-06 18:55

size_request 是最小大小

宽度变化是 pack_start 模式的问题

你 pack_start 函数里不是有两个 False 吗, 有一个是控制是否随容器改变大小
wjhbh
帖子: 50
注册时间: 2009-01-08 18:53

Re: GTK+编程中怎样自由控制按钮大小

#3

帖子 wjhbh » 2009-04-07 11:32

2楼说的很对,park_start()函数的第四个参数就是控制窗口部件是否填满分配给它的空间。可能我对这部分的内容理解的非常有限,我尝试了一下,要是只用一个GtkBox,park_start()的fill参数用FALSE还是不行, 必须用另外一个方向的Box,里面就放前一个Box才行。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: GTK+编程中怎样自由控制按钮大小

#4

帖子 eexpress » 2009-04-07 11:36

其实,还有一个粘贴的控件,让你回到win编程的习惯的。里面的控件不变大小和位置的。
找找吧。
● 鸣学
回复