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.