我目前正在设置一些按钮,问题是,我需要将其中10个按钮压缩成480像素。
我发现这个按钮的最小宽度是50px;如果我将其调整为小于50,它不会改变。我想把它们的大小改为48px甚至更小,但我不知道如何继续。
对于GTK库,我使用RELM。我在GTK的GitHub上问过,但他们声称问题出在GTK上。
我当前的代码如下
gtk::Box {
property_width_request: 480,
orientation: Horizontal,
#[name="button"]
gtk::Button{
property_height_request: 25,
property_width_request: 25,
label: &self.model.layout.get_character(0, self.model.shift),
clicked => Clicked(0),
},
}
尽管我确实设置了width_request
,但最小的宽度看起来是50像素。
有没有办法将按钮宽度减少到45px或更小?
由于显而易见的原因,您不能使小部件小于其最小大小。
小部件的最小大小由两件事决定:
- 应用于它的CSS样式规则
- 其子女的最小体型
因此,如果你想更改小部件的最小大小,你应该检查它应用了什么样的样式——你应该使用GTK检查器来找到它;以及里面每个孩子的大小。
一般来说,您不应该真的试图强制设置按钮的大小,尤其是当它可以包含文本时。用户字体、主题和本地化可能会打破您决定在系统上应用的任何限制。