布局如下图所示:两个盒子封装在具有指定宽度的垂直盒子中。单个大盒子位于右侧。大盒子应该填满所有可用的空间,然而,尽管设置了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);发布于 2020-08-13 02:12:03
为了解决这个问题,我丢弃了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;也是如此

https://stackoverflow.com/questions/63367379
复制相似问题