use strict; use warnings; use Wx; use Wx qw(:everything); use Wx::Event qw(EVT_BUTTON); use Wx::Event qw(EVT_DROP_FILES); use File::Slurp; use Digest::MD5; ############################################################################## my $app = Wx::SimpleApp->new; my $frame = Wx::Frame->new(undef, -1, 'test tool', wxDefaultPosition, Wx::Size->new( 700, 400 ), wxDEFAULT_DIALOG_STYLE | wxSTAY_ON_TOP ); my $file = $_; my ( $x, $y ); EVT_DROP_FILES( $x, $y ); tool($frame); ############################################################################### sub tool { my ($self) = @_; my $noteBook = Wx::Notebook->new( $self, -1, wxDefaultPosition, wxDefaultSize ); my $window1 = Wx::Panel->new( $noteBook, wxID_ANY ); my $window2 = Wx::Panel->new( $noteBook, wxID_ANY ); my $window3 = Wx::Panel->new( $noteBook, wxID_ANY ); $noteBook->AddPage( $window1, "First", 1, 0 ); $noteBook->AddPage( $window2, "Second", 0, 1 ); $noteBook->AddPage( $window3, "Third", 0, 2 ); my $button1 =Wx::Button->new( $window1, -1, "Test1", Wx::Point->new( 50, 300 ),wxDefaultSize ); EVT_BUTTON( $window1, $button1, \&test1 ); my $button2 = Wx::Button->new( $window1, -1, "Test2", Wx::Point->new( 175, 300 ),wxDefaultSize ); EVT_BUTTON( $window1, $button2, \&test2 ); my $lb1 = $window1->{my_listbox} = Wx::ListBox->new( $window1, wxID_ANY, wxDefaultPosition, Wx::Size->new( 300, 295 ) ); } 1; $frame->Show(1); $app->SetTopWindow($frame); $app->MainLoop;