设为首页 收藏本站
查看: 1884|回复: 0

[经验分享] GTK Box(hbox&vbox)的expand和fill两个属性的实践理解

[复制链接]

尚未签到

发表于 2015-4-17 09:00:59 | 显示全部楼层 |阅读模式
1. GtkHBox/GtkVBox的gtk_box_pack_start函数中的expand和fill两个参数的区别:

expand就是当Box给我们的widget分配了额外的空间后,我们的widget会占住这个空间,不会让给别人。
fill就是当expand为TRUE的时候,我们不仅占用Box给我们分配的空间,而且会把自己的界面扩大到这个空间上。

所以,简单来说,expand=TRUE, fill=FALSE就是占住空间但是控件本身大小不变;两个都是TRUE,就是不仅占住空间而且控件也会变得和这个空间一样大;expand=FALSE,fill就没了意义。

2. GtkHBox中只要expand是TRUE,那么,水平方向上一定fill,所以fill参数此时只影响垂直上是否fill;GtkVBox只要expand是TRUE,那么,垂直方向上一定fill,所以fill参数只影响水平上是否fill

3. 使用gtk_widget_set_size_request来改变widget的大小。widget如果变大了,而top-level  window没有使用gtk_widget_set_size_request设置固定大小时:如果window此时嫌小了,window自动扩大;如果 window不嫌小,能容下扩大后的widget,则window size不变。如果top-level  window使用了gtk_widget_set_size_request设置了固定大小,window嫌小的话,widget会超出边界绘制,覆盖其 他的widget。

使用gtk_widget_set_size_request函数时,width, height设成 -1 表示将widget  size设成widget应该有的size(natual size)。所以,一般如果widget size改变了,对于top-level  window,都会这样做一下,这样window就自动变成能容纳所有widget的大小。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-57936-1-1.html 上篇帖子: [视频教学]Maclean教你用Vbox在Enterprise Linux 5上安装Oracle 10gR2 RAC 下篇帖子: vbox克隆文件的路径如何修改?默认它生成在C盘,怎么修改?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表