#!/usr/bin/perl use warnings; use strict; use Tk; use Tk::NoteBook; use Tk::Pane; my $mw = MainWindow->new; $mw->geometry("600x400"); my $pane = $mw->Scrolled('Pane',-height => 1000,-bg=>'black', -scrollbars => "osoe"); my $n = $pane->NoteBook(); for ( 1 .. 20 ){ my $title = "mytab $_"; $_ = create_tab("$title"); } #pack widgets after being fully built $n->pack(-expand=> 1, -fill=>'both', -expand=>1, -anchor=>'nw',-side => 'top'); $pane->pack(-fill => 'both', -expand => 1); $mw->update; MainLoop; sub create_tab { my $tabname = shift; my $tn = $n->add($tabname, -label => $tabname, -underline => 0, #-raisecmd =>sub{ $mw->update} ); my $t = $tn->Scrolled("Text", -scrollbars => "onow", -height=> 1000, -bg=> 'lightseagreen', -wrap => 'none')->pack(-expand => 1, -fill => 'both', -anchor=> 'nw'); $t->tagConfigure ('bold', -font => [ -size => 20, -weight => 'bold' ]); for (1..1000){$t->insert('end',$tabname. "_$_\n",['bold'])}; return $t; }