转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> MySql >> 正文
Linux GUI编程笔记之GTK+篇(2)         ★★★★

Linux GUI编程笔记之GTK+篇(2)

作者:闵涛 文章来源:闵涛的学习笔记 点击数:1896 更新时间:2009/4/22 20:45:33
Y(竖向)方向上的间距。
怎么样,这个函数也不是挺简单的?不过要是你觉得这个函数还是太麻烦,你还可以使用下面这个函数:
void gtk_table_attach_defaults( GtkTable  *table,  //盒子
                                GtkWidget *widget,  //要加入盒子的子控件
                                guint      left_attach,
                                guint      right_attach,
                                guint      top_attach,
                                guint      bottom_attach );

这个函数省略了后面4个参数,它默认xoption, yoption都是:GTK_FILL | GTK_EXPAND
然后xpadding, ypadding都是0, 这样一来节省了我们不少时间。

我们学完了GTK+的布局容器,现在可以用各种控件来组合我们的应用程序界面了。各种容器之间又可以相互嵌套,这样一来构造复杂的界面也变得容易了。但是GTK+中也提供了一种让我们像Windows窗体那样直接就可以往窗体上摆控件的方法,那就是用GtkFixed:

GtkWidget*  gtk_fixed_new(void);   /* 建立一个自由布局控件 */

/* 往布局上加子控件 */
void        gtk_fixed_put(GtkFixed *fixed,   //自由布局控件
                         GtkWidget *widget,  //要加入的子控件
                          gint x,      //相对于fixed左上角的横坐标
                          gint y);     //相对于fixed左上角的纵坐标
/* 移动子控件 */
void        gtk_fixed_move(GtkFixed *fixed,   //自由布局控件
                           GtkWidget *widget, //要加入的子控件
                           gint x,            //新的X坐标
                           gint y);           //新的Y坐标
有了以上几个函数,我们就可以像Windows Form一样操作控件了,比如以下代码:
 fixed = gtk_fixed_new();
 gtk_widget_set_usize(fixed,150,150);
 button1 = gtk_button_new_with_label("按钮一");
 gtk_fixed_put(GTK_FIXED(fixed),button1,5,5);
 button2 = gtk_button_new_with_label("按钮二");
 gtk_fixed_put(GTK_FIXED(fixed),button2,55,55);
 button3 = gtk_button_new_with_label("按钮三");
 gtk_fixed_put(GTK_FIXED(fixed),button3,105,105);
会产生如下的界面:

好了,关于GTK+的窗体布局部分,我们已经学习完了。


PS: 本文参照了IBM DeveloperWorks里面宋国伟先生的一篇文章,且借用了几张图片,在这里表示感谢。
原文请查看:http://www-900.ibm.com/developerWorks/cn/linux/l-gtk/index.shtml

                                             -----------2004-7-29

上一页  [1] [2] 


[C语言系列]C# 和 Linux 时间戳转换  [Web开发]PHP flock文件锁介绍
[Web开发]flock() Linux下的文件锁  [电脑应用]Linux下的六个免费的虚拟主机管理系统介绍
[电脑应用]Linux数据库大比拚  [操作系统]在Windows中玩转Linux操作系统
[办公软件]在RedHat Linux 9里安装gaim0.80  [办公软件]掌握 Linux 调试技术
[办公软件]理解 Linux 配置文件  [聊天工具]Real10 & Xpdf installation on Linux Box
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台