我有一个hpane,它的一个孩子经常改变它的大小要求,因为它的文本变化。结果是每次更改文本时窗格都会移动。我想覆盖平移.u位置方法,使孩子的大小不会减少,只是增加。但是,我找不到方法来覆盖它。甚至
class MyHPaned(gtk.HPaned):
def do_compute_position(self, allocation, child1_req, child2_req):
print "Hi"
return gtk.HPaned.compute_position(self, allocation, child1_req, child2_req)
gobject.type_register(MyHPaned)
不起作用。你有什么建议吗?谢谢!你知道吗
重写
gtk_paned_compute_position
是不可能的,因为该函数在GTK本身中不是虚拟的。另外,gtk_paned_compute_position
被标记为内部的,不推荐使用,并且在GTK+-2.24.x源代码的任何地方都没有被调用。我怀疑导出它只是为了找出分隔符的位置,而不是通过重写来影响分隔符。你知道吗与其试图覆盖
HPaned.compute_position
,不如在窗格中放置一个子容器(例如gtk.Bin
的子容器),该容器通过挂接到size-allocate
信号并调用具有所需大小的set_size_request
来实现所需的调整大小策略。HPaned将自动遵守这一点。你知道吗相关问题 更多 >
编程相关推荐