Schrift
[thread]5036[/thread]

Menü im Frame



<< |< 1 2 >| >> 11 Einträge, 2 Seiten
renee
 2005-07-21 14:01
#44232 #44232
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Wie erstelle ich am geschicktesten ein Menü in einem Frame?

Bis jetzt habe ich versuchsweise Buttons genommen und erzeuge dann Popup-Menüs. Die haben aber den Nachteil, dass ich immer nochmal mit der Maus klicken muss, nachdem das Popup erzeugt wurde, etwas ausgewählt habe und bevor ich weitermachen kann...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Ishka
 2005-07-21 16:46
#44233 #44233
User since
2003-08-04
771 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Tk::Menu ist hier dein Freund, zumindestens, falls du mit Tk arbeitest, ansonsten sag bitte, welches Toolkit du verwendest.
sub z{if(@_){1while$x[$k=rand 10];t($t=$x[$k]=1)}print map"$z[$x[$_]]$_".($_%3?
"":"\n"),1..9}sub t{$j=0;$x[$_+1]==$t&&($j+=2**$_)for 0..8;z,die"Gewinner $z[$t]
"if grep$_==($j&$_),7,56,73,84,146,273,292,448;z,die"Gleichstand\n"if@x>9&&!grep
!$_,@x}@x=4;@z=qw{. [ (};z$^T&1;while(<>){next if$_>9||$x[$_];t$t=$x[$_]=2;z 1}
renee
 2005-07-21 17:01
#44234 #44234
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Kannst Du mir auch sagen, wie das funktioniert?? Ich habe schon den halben Morgen damit verbracht, damit rumzuspielen.

Also das hier funktioniert nicht:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#! /usr/bin/perl

use strict;
use warnings;
use Tk;

my $mw = MainWindow->new();
my $frame = $mw->Frame()->pack();

my $menu = $frame->Menu(-type => 'menubar');
$menu->cascade(-label => 'test');
my $menitem = $menu->Menu(-tearoff => 0);
my $item = $menitem->command(-label => 'test2',-command => sub{print "yes";});
$menu->entryconfigure('test',-menu => $menitem);

MainLoop;
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
coax
 2005-07-21 21:33
#44235 #44235
User since
2003-08-11
457 Artikel
BenutzerIn
[default_avatar]
Eine gute Idee ist ein Blick ins Perl/Tk Tutorial Steuerelemente - Menu, Menubutton, Message im Wiki zu werfen,
da findet sich eine Menge Beispielcode.

Eine andere Art eine Menubar unterzubringen (mit der Option -menu des Toplevel-Widgets)
Code: (dl )
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
#! /usr/bin/perl

 use strict;
 use warnings;

 use Tk;
 use Tk::Dialog;

 my $mw = MainWindow->new();

 my @menues = (
     [ 'cascade' => 'File',
       -underline => 0,
       -menuitems => [
                 [ 'command' => 'Exit',
                   -underline => 1,
                   -command => sub { Tk::exit() } ] ],
      ],
     [ 'cascade' => 'Help',
       -underline => 0,
       -menuitems => [
                 [ 'command' => 'About',
                   -underline => 0,
                   -command => sub { $mw->Dialog(-title => 'About',
                                                 -text => 'Menubar Example',
                                                 -default_button => 'Ok',
                                                 -buttons => [ 'Ok' ])->Show();
                                   } ] ],
      ],
 );

 my $menu = $mw->Menu( -menuitems => [ @menues ] );

 $mw->configure( -menu => $menu );

 MainLoop();


Grusz Christian.
,,Das perlt aber heute wieder...'' -- Dittsche
ptk
 2005-07-21 22:54
#44236 #44236
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Moechtest du vielleicht Menubutton verwenden? perldoc Tk::Menubutton
renee
 2005-07-22 04:05
#44237 #44237
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
@coax: Der Artikel im Wiki beschreibt, wie man ein Menü für ein MainWindow aufbaut. Das ist ja auch kein Problem, aber Frame hat keine -menu Option!

@ptk: Ich werde mir morgen (bzw. heute) mal Tk::Menubutton anschauen...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
renee
 2005-07-22 12:52
#44238 #44238
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Super, CPAN:Tk::Menubutton war die Lösung. Danke!
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Crian
 2005-07-27 18:44
#44239 #44239
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Allerdings stellt sich die Frage, ob nicht vielleicht Frame (oder ein abgeleitetes "MenuFrame") eine -menu Option anbieten könnte/sollte.

Die damit erstellten Menüs sind einfach schöner als die mit Menubutton.

Vielleicht kann ptk dazu etwas sagen? :-)
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
renee
 2005-07-27 18:58
#44240 #44240
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Was findest Du an Menubuttons nicht so schön??
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Crian
 2005-07-27 19:15
#44241 #44241
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Auf http://wiki.perl-community.de/bin....pitel13 hab ich ja ein bischen dazu geschrieben. Im unteren Beispiel kann man "ganz normal" per Tastatur durch die Menüs navigieren. Das ging mit den Menubuttons nicht (oder ich habs nicht hinbekommen). Auch das Aussehen ist nativer.
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
<< |< 1 2 >| >> 11 Einträge, 2 Seiten



View all threads created 2005-07-21 14:01.