按钮的大小应该通过在 VBox 中打包 HBox 来控制,但我的两个按钮的大小仍然取决于文本:
first=Gtk.VBox()
second=Gtk.HBox()
third=Gtk.VBox()
fourth=Gtk.HBox()
but1=Gtk.Button(label="any title")
first.pack_start(second,False,False,0)
third.pack_start(fourth,False,False,0)
first.pack_start(but1,False,False,0)
self.data_wp="title of label"
self.label_data=Gtk.Label(label=self.data_wp)
Gtk.Widget.set_size_request(but1,85,15)
but2=Gtk.Button(label=self.data_wp)
Gtk.Container.add(but2,self.label_data)
Gtk.Widget.set_size_request(but2,85,15)
我做错了什么?我从标签中添加了按钮标题,但这应该不是问题,我尝试直接在按钮上设置标题 - 没有任何改变。我尝试只使用一组VBox,HBox,但它也没有效果。
最佳答案
我认为这里的问题是您试图使用 Gtk.Widget 的 set_size_request() 方法来调整按钮的大小。但是set_size_request()只是设置了widget的最小尺寸,所以还是可以更大一些。
我不知道是否有调整按钮大小的方法,但是您可以使用 Gtk.Widget 的属性 width-request 和 height-request。
在您的代码中,它将是:
bt1.set_property("width-request", 85)
bt1.set_property("height-request", 15)
关于Python Gtk3 控制按钮大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34556250/