in reply to Re: Reading into array with sscanf
in thread Reading into array with sscanf
Thanks for all the replies. The examples all work and I even understand them (after a bit of reading). However, I'm seeing some weirdness in my actual application. The c_speed variable is being used in a Tk widget as follows:
my $cs_e1 = $seg1_f->Entry(-textvariable => \$c_speed[0], -width => +4, -validate => 'all', -vcmd => \&validate_s +peed, -font => $med_font)->g +rid( -row => 0, -column => +1, -sticky => "w"); sub validate_speed{ my $val = shift; $val ||= 0; #get alphas and punctuation out if( $val !~ /^\d+$/ ){ return 0 } if (($val >= 0) and ($val <= 10)) {return 1} else{ return 0 } }
When I use split I can print c_speed to the terminal and the values are there, the same as when I use my sscanf lines
$rstring = <$lfh>; ($c_speed[0], $c_speed[1], $c_speed[2], $c_speed[3]) = sscanf("%d %d + %d %d", $rstring);
BUT, the Tk Entry widget only sees the new values when using sscanf. When I use split the variable still retains it's old value. I'm assuming this is some widget weirdness - can anyone explain please?
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^3: Reading into array with sscanf
by tybalt89 (Monsignor) on Jul 16, 2024 at 16:36 UTC | |
by colintu (Acolyte) on Jul 16, 2024 at 16:51 UTC | |
by tybalt89 (Monsignor) on Jul 16, 2024 at 17:24 UTC | |
by colintu (Acolyte) on Jul 16, 2024 at 18:14 UTC | |
by tybalt89 (Monsignor) on Jul 16, 2024 at 18:55 UTC | |
|