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

Re: How the Perl/TK scroll box like MSDOS rolling display data?

by choroba (Abbot)
on Nov 28, 2012 at 09:40 UTC ( #1005991=note: print w/ replies, xml ) Need Help??


in reply to How the Perl/TK scroll box like MSDOS rolling display data?

Maybe Tk::after can help you.
Update: Example code:

#!/usr/bin/perl use warnings; use strict; use Tk; my $mw = new MainWindow::; my $frm_name = $mw->Frame(); my $lab = $frm_name->Label(-text => 'IP:'); my $ent = $frm_name->Entry(); my ($txt, $but); $but = $mw->Button(-text => 'Start Ping', -command => sub { push_button($but, $txt, $ +ent) }); my $textarea = $mw->Frame(); $txt = $textarea->Text(-width => 40, -height => 10); my $srl_y = $textarea->Scrollbar(-orient=>'v', -command => [yview = +> $txt]); my $srl_x = $textarea->Scrollbar(-orient=>'h', -command => [xview = +> $txt]); $txt->configure(-yscrollcommand => ['set', $srl_y], -xscrollcommand => ['set', $srl_x]); $lab->grid(-row => 1, -column => 1); $ent->grid(-row => 1, -column => 2); $frm_name->grid(-row => 1, -column => 1, -columnspan => 2); $but->grid(-row => 4, -column => 1, -columnspan => 2); $txt->grid(-row => 1, -column => 1); $srl_y->grid(-row => 1, -column => 2, -sticky => 'ns'); $srl_x->grid(-row => 2, -column => 1, -sticky => 'ew'); $textarea->grid(-row => 5, -column => 1, -columnspan => 2); MainLoop(); sub push_button { my ($but, $txt, $eng) = @_; open my $PING, '-|', 'ping', $eng->get or die; $but->configure(-state => 'disabled'); $txt->repeat(1000, sub {$txt->insert('end', scalar <$PING>)}); }
لսႽ ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ


Comment on Re: How the Perl/TK scroll box like MSDOS rolling display data?
Download Code
Re^2: How the Perl/TK scroll box like MSDOS rolling display data?
by Anonymous Monk on Nov 28, 2012 at 13:03 UTC
    Hi,Run your program error is as follows:

    E:\Study area\program_myself>perl t.pl

    Tk::Error: List form of pipe open not implemented at t.pl line 42.

    Tk callback for .button

    Tk::__ANON__ at C:/Perl/site/lib/Tk.pm line 250

    Tk::Button::butUp at C:/Perl/site/lib/Tk/Button.pm line 175

    <ButtonRelease-1>

    (command bound to event)

    Thanks.

      Oh, OK, you are on MSWin. Change line 43 to
      open my $PING, 'ping ' . $eng->get . ' |' or die;
      لսႽ ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ
        Thank you.It looks like I should have a good look at pipe related content. ^_^

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1005991]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (18)
As of 2014-07-23 15:20 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (145 votes), past polls