获取Embed Clutter Stage的当前宽度和高度

时间:2012-03-16 16:31:21

标签: c gtk clutter clutter-gui

我正在使用Clutter来构建交互式/动画UI。
我正在使用带有集成FixedLayout的两个盒子容器(ClutterBox),我希望能够在(gtk-)窗口大小调整期间使用硬编码布局将这些盒子重新排列到屏幕上。在一些gtk3示例中搜索,我发现这可以通过连接GtkWindow的信号“size-allocate”来实现。
我仍然无法实现的是获得Embed ClutterStage的宽度和高度。

我使用gtk_widget_get_preferred_size传递了ClutterStage小部件,但它只返回了我的首选大小,而不是当前调整大小的值。

有没有人有线索?

2 个答案:

答案 0 :(得分:2)

尝试gtk_widget_get_allocation()

答案 1 :(得分:2)

clutter_actor_get_size()窗口小部件返回的舞台上调用GtkClutterEmbed足以获得舞台的大小:每次GTK +协商时,拥有嵌入式舞台的GtkClutterEmbed窗口小部件会调整舞台大小窗口小部件的几何形状。

您还可以使用ClutterBindConstraint对象将actor的大小绑定到舞台的大小,或者使用ClutterSnapConstraintClutterAlignConstraint个对象来调整actor或者将actor对齐到阶段。