Ich möchte ein Fenster mit einer Wx::StaticBox, in der wiederum Elemente (wie z.B. ein Button) stehen.
WIe mach eich das?
Hier ist mein Ansatz:
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
use strict;
use warnings;
package ServusWelt;
use Wx qw/
wxGROW wxALL wxVERTICAL
/;
use base qw(Wx::App); # von Wx::App ableiten
sub OnInit {
my $app = shift;
my $frame = Wx::Frame->new( undef, # kein Eltern-Fenster
-1, # Fenter id
'Servus Welt', # Titel
[-1, -1], # Position x/y
[150, 150] # Größe x/y
);
$app->SetTopWindow($frame); # Fenster als oberstes bestimmen
my $panel = Wx::Panel->new( $frame, -1);
my $staticbox = Wx::StaticBox->new( $panel, -1, 'Wx::StaticBoxSizer' );
my $nsz = Wx::StaticBoxSizer->new(
$staticbox,
wxVERTICAL
);
$nsz->Add( Wx::Button->new( $panel, -1, 'Button 3' ), 1, wxGROW|wxALL, 5 );
$frame->Show(1); # Fenster zeichnen
} # /OnInit
package main;
ServusWelt->new->MainLoop; # Programminstanz erzeugen und starten
Irgendwie wird das alles so übereinander angezeigt.
Grüße, pktm