Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re: opening multiple sub-windows in perl tk

by viveksnv (Sexton)
on Nov 18, 2010 at 11:39 UTC ( #872205=note: print w/replies, xml ) Need Help??


in reply to opening multiple sub-windows in perl tk

Hi,
I am not an expert in perl.
I tried the code below, surely this is not the correct way. but i wanted to share it with perlmonks.
Another possibility is, if possible, we can pass the variable $subwin1 with all Tk properties to subroutine get_save. I tried, but the properties are not going to travel to sub get_save.
#!/usr/bin/perl -w use warnings; use strict; use Tk; use Tk::FileSelect; my $mw = MainWindow->new; $mw->configure( -background => 'black', -foreground => 'white' ); $mw->geometry( "400x100" ); $mw->title( "Multiple Windows Test" ); my $button1 = $mw->Button( -text => "view Results", -background => "cyan", -command => \&button1_sub )->pack( -side => "right" ); $mw->Button( -text => "Exit", -command => sub { exit } ) ->pack( -side => "bottom" ); sub button1_sub { our $subwin1 = $mw->Toplevel; $subwin1->geometry( "500x400" ); $subwin1->title( "Sub Window #1" ); my $fh; open( $fh, '+<', "./test.txt" ) or die $!; my @contents = <$fh>; # print "@contents\n"; close( $fh ); my $sublable = $subwin1->Scrolled( 'Text', -scrollbars => 'osoe', )- +>pack; $sublable->insert( 'end', @contents ); my $subwin_button = $subwin1->Button( -text => "Close window", -command => [$subwin1 => 'destroy'], )->pack( -side => "bottom" ); #=================Creating save buttion on subwindow =========== my $save_button = $subwin1->Button(-text=>'save', -command =>\&get_save, -background =>'cyan')->pack(-side=>'right'); sub get_save { my $dst = $subwin1->getSaveFile( -initialdir => '/root/', -defaultextension => '.in', -initialfile =>'test.txt', -title => 'Save', -filetypes => [ [ 'myfiles' => '.in' ], [ 'All files' => '*' ], ], ); $dst ||= '<undef>'; warn "dst=$dst"; } } MainLoop;

Regards,
Vivek

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://872205]
help
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (4)
As of 2018-07-21 00:41 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    It has been suggested to rename Perl 6 in order to boost its marketing potential. Which name would you prefer?















    Results (443 votes). Check out past polls.

    Notices?