Описание Gtk-Perl | ||
---|---|---|
Предыдущая | Следующая |
Фреймы используют для группировки и выделения нескольких виджетов в одном визуальном контейнере. Можно добавить фрейму подпись, что делает логику группировки элементов более очевидной и облегчает восприятие информации пользователем. Местоположение подписи фрейма и вид бордюра можно изменять.
Создаем фрейм:
$frame = new Gtk::Frame( $label );
$frame->set_label( $label );
Подпись к нему по умолчанию будет распложена в левом верхнем углу. Если
$label
равен null, то подписи у фрейма не будет. Изменит текст подписи позволяет
метод:
А местонахождение подписи меняется методом:
$frame->set_label_align( $xalign, $yalign );
где
$xalign
и
$yalign
принимает значения между
0.0
и
1.0.
$xalign
означает позиции подписи относительно верхней горизонтальной линии
фрейма.
$yalign
пока не поддерживается. По умолчанию
$xalign
равно
0.0
что, как было замечено, помещает подпись в левый верхний угол.
Следующая функция измения стиля рамки фрейма:
$frame->set_shadow_type( $type );
'none'
где
$type
может принимать одно из следующих значений:
'in'
'out'
'etched_in' (по умолчанию)
'etched_out'
Проилюстрируем использование фреймов.
#!/usr/bin/perl -w use Gtk ; use strict ; set_locale Gtk; init Gtk; my $false = 0; my $true = 1; my $i; my $window; my $frame; my $button; # Создаем окно $window = new Gtk::Window( "toplevel" ); $window->set_title( "Frame Example" ); $window->signal_connect( "destroy", sub { Gtk-> exit ( 0 ); } ); $window->set_usize( 300, 300 ); $window->border_width( 10 ); # Создаем фрейм $frame = new Gtk::Frame(); $window->add( $frame ); # Устанавливаем подпись фрейму $frame->set_label( "Gtk Frame Widget" ); # Помещаем подпись в правый верхний угол фрейма $frame->set_label_align( 1.0, 0.0 ); # Меняем стиль рамки $frame->set_shadow_type( 'etched_out' ); $frame->show(); $window->show(); main Gtk; exit ( 0 ); # КОНЕЦ ПРИМЕРА
Frame Example Screenshot