Dandello has asked for the wisdom of the Perl Monks concerning the following question:
The first and third modules of this modeling program and finished and working but I'm missing something obvious this module.
#!/usr/bin/perl # $Id: tkform2 $ # $Date: 1.26.11 $ # $HeadURL: adamant.net $ # $Revision: 2011 $ # $Source: /tkform2.pl $ ###################################################################### +############ use strict; use warnings; use CGI::Carp qw(fatalsToBrowser); use Tk; our $VERSION = 1.00; open my $DAT, '<', 'data/data1.txt' or croak 'cannot open data1'; my @data_in = <$DAT>; close $DAT or croak 'cannot close data1'; my ( $model, $initial, $copyerr, $LST, $file_id, $format, $tm, $for2 ) +; my $mpy0 = 0; my $mpe0 = 10; ( $model, $initial, $copyerr, $LST, $file_id, $tm, $format, ) = split +/[|]/xsm, $data_in[0]; if ( $format == 1 ) { $for2 = q{comma delimited}; } elsif ( $format == 2 ) { $for2 = q{tab delimited}; } my $mw = new MainWindow; $mw->geometry('500x600'); my $lab0 = $mw->Label( -text => "Model $model" )->pack(); my $lab1 = $mw->Label( -text => "Initial #: $initial" )->pack(); my $lab2 = $mw->Label( -text => "Copying Error % +/- $copyerr" )->pack +(); my $lab3 = $mw->Label( -text => "File Format - $for2" )->pack(); #Geometry Management my $lab4 = $mw->Label( -text => "Year" )->pack(); my $mpy_0 = $mw->Entry( -width => 5, -textvariable => \$mpy0 )->pack() +; my $lab5 = $mw->Label( -text => "Momentary\nPop. Est." )->pack(); my $mpe_0 = $mw->Entry( -width => 5, -textvariable => \$mpe0 )->pack() +; #$lab4 -> grid(-row=>1,-column=>1); #$lab5 -> grid(-row=>1,-column=>2); #$mpy_0 -> grid(-row=>2,-column=>1); #$mpe_0 -> grid(-row=>2,-column=>2); my $button = $mw->Button( -text => "Submit", -command => \&somesub )->pack( -side => 'bottom' ); MainLoop; open my $DATABASE, '>', 'data/datatrans.txt' or croak 'datatrans not w +ritten.'; print {$DATABASE} qq{$model|$initial|$copyerr|$LST|$file_id|$format|$tm|$mpy0,|$mpe0,| +} or croak 'unable to print'; close $DATABASE or croak 'datatrans not closed.'; sub somesub { $, = "\n"; print "\nWorking\n"; $mw->destroy; } exit;
What I need, and can't seem to get to work, is: The $mpy_0..? series in a column under $lab4 and in the next column, the Smpe_0..? series under $lab5. When I try to put those into a frame ala my $frm_name = $mw -> Frame; with the $mw replaced by $frm_name just like in the tutorial, nothing appears - with or without the grid information.
When those widgets are not in a frame and the grid info is un-commented, the Tk window never appears. No warnings, just a blinking cursor in the DOS window.
I assume it's trying to do something.
What am I missing?
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: More Perl/Tk confusion
by GrandFather (Saint) on Jan 27, 2011 at 01:45 UTC | |
by Dandello (Monk) on Jan 27, 2011 at 02:24 UTC | |
by zentara (Cardinal) on Jan 27, 2011 at 15:54 UTC | |
|
Re: More Perl/Tk confusion
by PeterPeiGuo (Hermit) on Jan 27, 2011 at 01:16 UTC | |
by Dandello (Monk) on Jan 27, 2011 at 01:24 UTC |