在GTK中,我如何根据窗口大小而不是像素来给widget设置空间和文字大小?

问题描述 投票:-2回答:1

在GTK中,例如,在一个VBox或GtkGrid中,部件的整体大小是根据屏幕的大小来决定的。如果在一个同质的VBox里有两个按钮,它们将是窗口高度的一半。

我的问题是,对于文字大小或部件之间的间距或padding,我如何使它与窗口大小成比例,以便在窗口调整大小时,间距和文字大小会改变以反映这一点?

在绘图区域,我可以使用 gtk_widget_get_allocated_height()gtk_widget_get_allocated_width()但是,什么是相当于 外面 绘图区域?

c gtk gtk3
1个回答
2
投票

这不仅仅是一个屏幕的问题。在Gtk中,用户应该经常能够调整窗口的大小,而小部件也会根据显示管理器的变化而变化。对于Gtk2来说,你可以通过widget->allocation.width和widget->allocation.height来获得绘图区域的像素数。Gtk3则有些不同。然后乘以Gehardh提到的分数。

© www.soinside.com 2019 - 2024. All rights reserved.