From: Thomas M. <to...@gm...> - 2006-11-13 02:00:32
|
brilliant! That was in fact the problem. Thanks a bunch! Tom On 11/13/06, Mark Dootson <mar...@zn...> wrote: > Tom, > > I've tested below on a Mac mini - 10.3, wx version 0.22. > It works as desired. > > I think the problem with your code is you are using > Wx qw( :all ); > > and you are not using 'strict'. > > Wx does not export ':all', but uses ':everything' instead. > This would have been apparent if 'use strict' were switched on. > > Best regards > > Mark > > #------------ EXAMPLE ------------------------------------- > > package MyFrame; > use strict; > use Wx qw( :everything ); > use vars qw(@ISA); > @ISA = qw(Wx::Frame); > > sub new{ > if(not exists $_[4]){ $_[4] = wxDefaultPosition;} > if(not exists $_[5]){ $_[5] = wxDefaultSize;} > my( $self ) = shift->SUPER::new( @_ ); > $self->{panel} = > Wx::Panel->new($self,-1,wxDefaultPosition,wxDefaultSize); > $self->{txtCheck} = > Wx::TextCtrl->new($self->{panel},-1,"",wxDefaultPosition,wxDefaultSize,wxTE_MULTILINE); > > $self->{txtCheck}->SetFont(Wx::Font->new(12,wxMODERN,wxNORMAL,wxNORMAL,0)); > $self->{szVmain} = Wx::BoxSizer->new(wxVERTICAL); > $self->{szVpanel} = Wx::BoxSizer->new(wxVERTICAL); > > $self->{szVmain}->Add($self->{panel},1,wxTOP|wxLEFT|wxBOTTOM|wxRIGHT|wxEXPAND,3); > > $self->{szVpanel}->Add($self->{txtCheck},1,wxTOP|wxLEFT|wxBOTTOM|wxRIGHT|wxEXPAND,3); > $self->SetSizer($self->{szVmain}); > $self->SetAutoLayout(1); > $self->Layout(); > $self->{panel}->SetSizer($self->{szVpanel}); > $self->{panel}->SetAutoLayout(1); > $self->{panel}->Layout(); > $self->Refresh(); > $self->Centre(); > return $self; > } > > > package MyApp; > use Wx; > use base 'Wx::App'; > use vars qw(@ISA ); > > @ISA = qw(Wx::App); > > sub OnInit { > my( $self ) = shift; > my( $frame ) = MyFrame->new(undef, -1); > $frame->Show(1); > return 1; > } > > > package main; > > my( $app ) = MyApp->new(); > $app->MainLoop(); > > > #------------ END EXAMPLE ------------------------------------- > > > -- No discipline is ever requisite to force attendance upon lectures which are really worth the attending. -- Adam Smith, "The Wealth of Nations" |