File: mitem_test

package info (click to toggle)
perl-tk 1:800.025-2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 18,444 kB
  • ctags: 19,081
  • sloc: ansic: 206,740; perl: 40,187; makefile: 4,371; sh: 2,373; yacc: 762
file content (40 lines) | stat: -rw-r--r-- 870 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/usr/local/bin/perl -w
 
require 5.003;
use English;
use Tk;
use Tk::Menu;
use Tk::Menubutton;

{
 package NoisyButton;
 require Tk::Menu::Item;
use base  Tk::Menu::Button;

 Construct Tk::Menu 'NoisyButton';
 
 sub PreInit
 {
  my ($class,$menu,$minfo) = @_;
  $minfo->{'-command'} = sub { print "$minfo->{-label} pressed.\n";};
 }
 
}
 
# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
$mw     = MainWindow->new;
$mw->title('Menuitem demo');
 
$MB = $mw->Menubutton(-text => 'File');
$M = $MB->Menu(-menuitems => [
                         [Button => 'Howdy', -command => sub{print "Howdy\n";}],
                         [NoisyButton => 'Noisy'],
                         [Button => 'Quit', -command => sub{exit}],
                ]);
$MB->configure(-menu => $M);
$MB->pack(-side => 'top');
 
MainLoop;
exit;
# End of Menuitem demo