1

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

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

有人有线索吗?

4

2 回答 2

2

试试gtk_widget_get_allocation()

于 2012-03-16T20:10:37.167 回答
2

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

您还可以使用ClutterBindConstraint对象将演员的大小绑定到舞台的大小,或者使用一个ClutterSnapConstraint或一个ClutterAlignConstraint对象来调整演员的大小或将演员与舞台对齐。

于 2012-03-16T23:16:09.987 回答