The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Каталог документации / Раздел "Perl" / Оглавление документа

Часть 34. Стрелки

Иерархия наследования

Object
   +--- Widget
         +--- Misc
               +--- Arrow
         

Внешне виджет стрелок представляет собой указатель. Ему можно задать направление и стиль стрелок. На практике очень удобно использовать эти виджеты на кнопках. Как и Label, виджет стрелок не отправляет сигналов.

Существует только две функции для управления виджетом стрелок.

$arrow = new Gtk::Arrow( $arrow_type, $shadow_type );

$arrow->set( $arrow_type, $shadow_type );

Первая создает новый виджет заданого направления и вида. Второй позволяет менять эти значения. $arrow_type может принимать одно из следующих значений:

'up'
'down'
'left'
'right'

Эти значения однозначно определеяют направление указателя стрелки. В свою очередь $shadow_type может принимать следующие значения:

'in'
'out' (the default)
'etched_in'
'etched_out'

34.1. Пример использования стрелок.

Приведем краткий пример для илюстрации использования стрелок.

Исходник

      
#!/usr/bin/perl -w

use 
Gtk
;
use 
strict
;

set_locale Gtk;
init Gtk;


my
 $false = 0;

my
 $true = 1;


my
 $window;

my
 $button;

my
 $box;

# Создаем окно приложения
$window = new Gtk::Window( "toplevel" );
$window->set_title( "Arrow Buttons" );
$window->signal_connect( "destroy", 
sub
 { Gtk->
exit
( 0 ); } );
$window->border_width( 10 );

# Создаем контейнер для стрелок-кнопок
$box = new Gtk::HBox( $false, 0 );
$box->border_width( 2 );
$window->add( $box );

# упаковываем и показываем наши виджеты
$box->show();

$button = create_arrow_button( 'up', 'in' );
$box->pack_start( $button, $false, $false, 3 );

$button = create_arrow_button( 'down', 'out' );
$box->pack_start( $button, $false, $false, 3 );

$button = create_arrow_button( 'left', 'in' );
$box->pack_start( $button, $false, $false, 3 );

$button = create_arrow_button( 'right', 'out' );
$box->pack_start( $button, $false, $false, 3 );

$window->show();
main Gtk;

exit
( 0 );



### Функции


# Создаем виджет стрелок с указанными параметрами и упаковываем 
# его в кнопку. Первый параметр - направление стрелки, второй -
# тип тени.


sub
 
create_arrow_button

{
   
my
 ( $arrow_type, $shadow_type ) = @_;

   
my
 $button;
   
my
 $arrow;

   $button = new Gtk::Button();
   $arrow = new Gtk::Arrow( $arrow_type, $shadow_type );

   $button->add( $arrow );
   $button->show();
   $arrow->show();

   
return
 ( $button );
 }


# Конец примера
      
   

Скриншот




Спонсоры:
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2020 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру