この電子メール スレッドとそのスレッドにリンクされているコードに触発されているため、これを完全に信用することはできませんが、以下は機能します。粗雑ですが(サイズを調整するために毎秒ウィンドウをポーリングします)。
Shoes.app do
@header = stack :height => 48 do
background red
end
stack do
@edit = edit_box
end
@footer = flow do
style(:attach => Window, :top => app.height-100, :height => 25)
button "Button 1"
button "Button 2"
end
@height = 0
every(1) do
@windowheight = slot.height
# Note app.height works on Linux and Windows, but not on OSX
# See http://article.gmane.org/gmane.comp.lib.shoes/3493/match=app+height
# So use slot.height instead.
unless @windowheight == @height
@edit.style(:height => @windowheight-@header.height-@footer.height)
@footer.style(:top => @windowheight-25)
end
end
end
私が知る限り、編集ボックスの上にボタンを移動した場合でも、動的にサイズを変更するには、同じ種類の操作を行う必要があります。ただし、質問できる靴の新しいメーリングリストがあります:shoes@librelist.com