您的位置:首页 > 移动开发 > Objective-C

glib中g_object_set_data及相关函数的使用[0713]

2009-07-13 14:12 489 查看
主要使用的函数有g_object_set_data与g_object_get_data两个函数

他们的主要功能是把某个指针(任意类型的[可以指向某个构件],原型为gpointer ,即空指针)与某个构件相关连。

关联后即可通过构件+相应的key获取到相应的指针。

#include <gtk/gtk.h>

void object_data_get(GtkWidget* wid)
{
char* var = g_object_get_data(G_OBJECT(wid), "1");
char* var2 = g_object_get_data(G_OBJECT(wid), "2");
printf("the string = %s \n", var);
printf("the string = %s \n", var2);
return ;
}

int main(int argc, char**argv)
{
gtk_init(&argc, &argv);
GtkWidget* label = gtk_label_new("this is a new lable");
g_object_set_data(G_OBJECT(label), "1", "hello");
g_object_set_data(G_OBJECT(label), "2", "world");
object_data_get(label);
return ;
}


另外如果是clutter中一些不为float reference的东东,也可以用此法做个关联

最后用clutter_container_find_by_name找到相应的构件,在通过指定的key找到需要释放的构件进行释放。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: