I think the WaitBox module is buggy. I kept getting errors with the latest version of Tk. It's no wonder I hardly ever see WaitBox in use.
can't make ".waitbox" its own master at /usr/lib/perl5/5.8.6/i686-linu
+x-thread-multi/Tk/Submethods.pm line 37.
at /usr/lib/perl5/site_perl/5.8.6/Tk/WaitBox.pm line 58
If you are just looking for a dialog which grabs control, and prevents $mw from responding, try something like the following. There is also DialogBox which will allow you to place your Progressbar into it( I've not tested that combo , but it should work).
#!/usr/bin/perl
use warnings;
use strict;
use Tk;
use Tk::Dialog;
my $mw = MainWindow->new();
$mw->geometry("+100+100");
$mw->title("Main Window");
$mw->geometry("250x250");
$mw->bind("<Return>", \&do_dialog);
my $result = "Dialog Result Here";
$mw->Label(
-textvariable => \$result,
-relief => "sunken",
-borderwidth => 1
)->pack(
-side => "bottom",
-fill => "both",
-padx => 5,
-pady => 5,
-ipadx => 3,
-ipady => 3
);
$mw->Button(
-text => "Exit",
-command => sub{ exit(0) },
)->pack(
-fill => "x",
-padx => 5,
-pady => 5,
);
$mw->Button(
-text => "Test Dialog",
-command => \&do_dialog,
)->pack(
-expand => 1,
-fill => "both",
-padx => 5,
-pady => 5,
);
MainLoop;
exit(0);
sub do_dialog {
my $dlg = $mw->Dialog(
-title=>"Here is a question for you.",
-buttons => ["Cancel", "No", "Yes"],
-default_button => "No",
-text => "Let's see what the result is..",
-font => "Helvetica"
);
$result = "Result: " . $dlg->Show();
print("got: $result\n");
}
I'm not really a human, but I play one on earth.
flash japh
|