我无法在红宝石鞋中间对齐list_box。我测试了一些东西,包括:right => “50”或:left => “50”,但它仍然不起作用。
Shoes.app do
stack :width => "100%", :height => "45%" do
a = list_box :items => ["lol","b"], :width => 50, :align => "center"
end
end
答案 0 :(得分:2)
我没有找到直接的方法,但你可以使用这个黑客
module Shoes::Types
def centr
left=(self.parent.width-self.style[:width])/2
self.move(left,self.top)
end
def middle
top=(self.parent.height-self.style[:height])/2
self.move(self.left,top)
end
end
Shoes.app do
@c=stack :width=>50, :height=>30 do
a=list_box :items => ["lol","b"], :width => 50, :height=>30
end
@c.centr.middle
end
实际上,首先要扩展插槽的功能,以便将它们放置在包含插槽的中心或中间。然后将列表框包装在一个狭小的插槽中,然后放在中间位置。