博客首页 注册 建议与交流 排行榜 加入友情链接
推荐 投诉 搜索: 帮助

湖光倒影

我的技术blog
   hgdy.cublog.cn
关于作者  
姓名:刘宁
职业:PF开发
年龄:23
位置:大连
个性介绍:湖光倒影,碧波涟涟,沉下的是微微的清醒的痛,折射的却是最闪烁的一瞬。

我的分类  




GTK+图形化应用程序开发学习笔记(五)—组装盒、组合表、固定容器构件(3)

三、固定容器构件

       GtkFixed(固定容器构件)允许将构件放在窗口的固定位置,这个位置是相对与窗口的左上角的。构件的位置可以动态改变。

       使用GtkFixed为构件定位,在大多数情况下都是不可取的。因为当用户调整窗口尺寸时,勾结不能适应窗口的尺寸变化。当然,你可以在窗口尺寸变化的时候采取行动,调整构件的位置和大小。

       gtk_fixed_new函数用于创建新的固定容器构件。

 

6

名称:

gtk_fixed_new

功能

创建固定容器构件

头文件

#include <gtk/gtk.h>

函数原形

GtiWidget *gtk_fixed_new(void);

参数

返回值

新的固定容器构件

      

      

 gtk_fixed_put函数将构件放在由x,y指定的位置。

 

7

名称:

gtk_fixed_put

功能

将构件放入固定容器构件的指定位置

头文件

#include <gtk/gtk.h>

函数原形

void gtk_fixed_put(GtkFixed *fixed,GtkWidget *widget,gint16 x,gint16 y);

参数

fixed        固定容器容器构件

widget       要放在固定容器构件中的构件

x            放置的横坐标

y            放置的纵坐标

返回值

      

      

 gtk_fixed_move函数将指定构件移动到新位置。

 

8

名称:

gtk_fixed_move

功能

移动固定容器构件里的构件到指定位子

头文件

#include <gtk/gtk.h>

函数原形

void gtk_fixed_move(GtkFixed *fixed,GtkWidget *widget,gint16 x,gint16 y);

参数

fixed        固定容器构件

widget       要放在固定容器构件中的构件

x            放置的横坐标

y            放置的纵坐标

返回值

      

 

 

 

 

 

 

 

下面是固定构件的程序例子:

#include <gtk/gtk.h>

 

GtkWidget *window;/*定义窗体*/

GtkWidget *fixed;/*定义固定容器构件*/

GtkWidget *button;/*定义按钮*/

gint function(gpointer data);

gpointer data;

gint sign;

int x=0;

int y=0;

 

int main(int argc,char *argv[ ])

{

gtk_init(&argc,&argv);/*初始化*/

window=gtk_window_new(GTK_WINDOW_TOPLEVEL);/*创建窗体*/

gtk_signal_connect(GTK_OBJECT(window),”destroy”,G_CALLBACK(gtk_main_quit),NULL);

fixed=gtk_fixed_new();/*创建固定容器构件*/

button=gtk_button_new_with_label(“button”);/*创建按钮*/

gtk_fixed_put(GTK_FIXED(fixed),button,10,10);/*将按纽放在固定容器构件的指定位置*/

 

sign=g_timeout_add(600,function,data);/*创建定时器*/

gtk_container_add(GTK_CONTAINER(window),fixed);/*把固定容器构件放入窗体*/

gtk_widget_show(fixed);

gtk_widget_show(button);

gtk_widget_show(window);

gtk_main();

}

 

gint function(gpointer data)

{

gtk_fixed_move(GTK_FIXED(fixed),button,++x,++y);/*移动按纽*/

return TRUE;

}

       程序运行后得到如下的窗体:

       窗体每隔600毫秒便会扩大一次。

 

 

 发表于: 2007-06-09,修改于: 2007-06-09 22:33 已浏览2116次,有评论0条 推荐 投诉

  网友评论

  发表评论



Copyright © 2001-2010 ChinaUnix.net All Rights Reserved

感谢所有关心和支持过ChinaUnix的朋友们
页面生成时间:0.02191

京ICP证041476号