Manažer rozvržení Fox::FXVerticalFrame je obdobou manažeru Fox::FXHorizontalFrame jediný rozdíl je ve směru umístňování komponent. Zatímco Fox::FXHorizontalFrame rozmístňuje vodorovně (horizontálně), Fox::FXVerticalFrame provádí rozmísntění ve směru svislém (vertikálním). Opět je možno si určit bude-li se tak dít shora dolů, nebo zdola nahoru.
V následující ukázce umístníme na formulář pod sebe čtyři prvky: nápis, vstupní pole a dvě tlačítka. Prvky jsou zarovnány na levý okraj.
#!/usr/bin/env ruby
# $Id: verticalframe1.rb,v 1.1 2003/11/03 18:22:20 radek Exp $
# $Source: /home/radek/cvs/ruby-book/example/gui/fxruby/verticalframe1.rb,v $
require "fox"
include Fox
class MyApp < FXApp
end
class MyWin < FXMainWindow
def initialize(app)
super(app, "Horizontal Frame", nil, nil, DECOR_ALL, 0, 0, 155, 104)
FXVerticalFrame.new(self) do |frame|
FXLabel.new(frame, "Hodnota:")
FXTextField.new(frame, 16).connect(SEL_COMMAND) do
|sender, selector, data|
puts data
exit
end
FXButton.new(frame, "Konec", nil, app, FXApp::ID_QUIT)
FXButton.new(frame, "Taky konec", nil, app, FXApp::ID_QUIT)
end
end
def create
super
show(PLACEMENT_SCREEN)
end
end
app = MyApp.new
app.init(ARGV)
form = MyWin.new(app)
app.create
app.run
Jak je vidět na obrázku, jednotlivé komponenty jsou umísntěny pěkně pod sebou.

