0

我刚开始玩弄杂乱,我遇到了一个关于在 ClutterActor 上设置属性的问题。

我想设置枢轴点属性,在搜索参考后,似乎最适合的函数是 clutter_container_child_set_property (我找不到任何直接在演员上操作的东西),所以我正在尝试

ClutterPoint point = {128,64};
clutter_container_child_set_property(CLUTTER_CONTAINER(stage), box, "pivot-point", point);

但我得到一个错误,它期望点是 GValue 类型,我如何将杂波点更改为 gvalue?

4

1 回答 1

1

clutter_container_set_property可能不是正确的方法,但是ClutterPoint在 a 中填充 aGValue看起来像这样:

GValue value;
g_value_init (&value, CLUTTER_TYPE_POINT);
g_value_set_boxed (&value, &point);

一旦你有了,你可以使用g_object_set_property来设置ClutterActor:pivot-point属性:

g_object_set_property (G_OBJECT(box), "pivot-point", &value);

或者你可以让 GObject 为你处理 GValue 的东西并使用g_object_set

g_object_set (G_OBJECT(box), "pivot-point", &point, NULL);

如果由于其他原因您还没有ClutterPoint坐下来,最简单的方法就是使用clutter_actor_set_pivot_point

clutter_actor_set_pivot_point (box, 128, 64);

当然,如果您已经拥有ClutterPoint,您也可以只使用point.xandpoint.y代替128and 64

于 2013-02-09T20:18:21.833 回答