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

Posted

技术标签:

【中文标题】获取 Embed Clutter Stage 的当前宽度和高度【英文标题】:Get current width and height of an Embed Clutter Stage 【发布时间】:2012-03-16 16:31:21 【问题描述】:

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

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

有人知道吗?

【问题讨论】:

【参考方案1】:

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

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

【讨论】:

【参考方案2】:

试试gtk_widget_get_allocation()

【讨论】:

以上是关于获取 Embed Clutter Stage 的当前宽度和高度的主要内容,如果未能解决你的问题,请参考以下文章

混乱工具包中演员的负深度?

可以将 Clutter 与 Python 3 一起使用吗?

Clutter.Image 属性——从磁盘加载图像

如何在mingw上构建cogl和clutter?

我应该使用啥来代替 clutter_score_new?

如何使用 Pango 在 Clutter.Text 中设置行高