如何让 Gtk.Box 填满所有可用空间?
Posted
技术标签:
【中文标题】如何让 Gtk.Box 填满所有可用空间?【英文标题】:How to make Gtk.Box fill all the available space? 【发布时间】:2020-08-11 22:47:42 【问题描述】:布局如下图所示:两个盒子封装在具有指定宽度的垂直盒子中。单个大盒子位于右侧。大框应该填满所有可用空间,但是尽管设置了Gtk.Align.FILL
属性,但它并没有发生。
请忽略“利用率”框。
cpu_utilization_chart = new Chart (cpu.core_list.size);
cpu_frequency_chart = new Chart (1);
cpu_temperature_chart = new Chart (1);
var smol_charts_container = new Gtk.Box (Gtk.Orientation.VERTICAL, 0);
smol_charts_container.add (cpu_frequency_chart);
smol_charts_container.add (cpu_temperature_chart);
var big_box = new Gtk.Box (Gtk.Orientation.HORIZONTAL, 0);
big_box.add (smol_charts_container);
big_box.add (cpu_utilization_chart);
attach (title_grid, 0, 0, 1, 1);
attach (grid_usage_labels(), 0, 1, 1, 1);
attach (big_box, 0, 1, 1, 1);
【问题讨论】:
【参考方案1】:为了解决这个问题,我放弃了 Gtk.Grid
并将其替换为 Gtk.Box
。
pack_end (cpu_utilization_chart, true, true, 0);
pack_end(smol_charts_container, false, false, 0);
还有smol_charts_container.hexpand = false;
【讨论】:
以上是关于如何让 Gtk.Box 填满所有可用空间?的主要内容,如果未能解决你的问题,请参考以下文章
带有 PageTabViewStyle 的 TabView 屏幕中的背景不会填满整个可用的垂直空间