#!/usr/bin/perl use warnings; use strict; use Gtk2 -init; my $hpaned1 = Gtk2::HPaned->new; $hpaned1->add1(Gtk2::TextView->new); $hpaned1->add2(Gtk2::TextView->new); my $hpaned2 = Gtk2::HPaned->new; $hpaned2->add1(Gtk2::TextView->new); $hpaned2->add2(Gtk2::TextView->new); $hpaned1->set_position(100); $hpaned2->set_position(100); $hpaned1->signal_connect( 'notify::position' => sub { my $pos1 = $hpaned1->get_position; my $pos2 = $hpaned2->get_position; $hpaned2->set_position( $pos1 ) if $pos1 != $pos2; } ); $hpaned2->signal_connect( 'notify::position' => sub { my $pos1 = $hpaned1->get_position; my $pos2 = $hpaned2->get_position; $hpaned1->set_position( $pos2 ) if $pos1 != $pos2; } ); my $vbox = Gtk2::VBox->new; $vbox->pack_start($hpaned1, 1,1,0); $vbox->pack_start($hpaned2 ,1,1,0); my $window = Gtk2::Window->new; $window->signal_connect (destroy => sub {Gtk2->main_quit}); $window->add($vbox); $window->set_default_size(200, 300); $window->show_all; Gtk2->main;