Schrift
[thread]10807[/thread]

popupmenü mit images?, Perl Tk



<< >> 6 Einträge, 1 Seite
#Kein Kommentar
 2007-11-15 19:00
#102454 #102454
User since
2007-06-09
575 Artikel
HausmeisterIn
[default_avatar]
hallo,

ich suche eine möglichkeit ein popupmenü mit bildern zu erstellen.
allerdings funktioniert das nicht, obwohl ich alles richtig mache und das bild existiert erscheint anstatt des bildes nur ein "(image)" als menübutton. bei normalen menüs funktioniert das.

weiß jemand wie das geht?
Gerade weil wir alle in einem Boot sitzen, sollten wir froh sein, dass nicht alle auf unserer Seite sind
ptk
 2007-11-15 20:12
#102457 #102457
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Hast du mal unter "Menus" in der widget-Demonstration geschaut? Die Beispiele dort enthalten Bilder.
Spieler
 2007-11-15 21:04
#102460 #102460
User since
2007-09-24
70 Artikel
BenutzerIn
[default_avatar]
Hallo,

eigentlich müsste es unabhängig von der Art des Menus sein. Es funktioniert auch:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 use warnings;
use strict;

use Tk;

my $mw = MainWindow->new;
my $m = $mw->Menu(-popover => 'cursor',
-tearoff => 0,
);


my $image = $mw->Photo(-file => Tk->findINC(
'Xcamel.gif'));
$m->command(-bitmap => 'info' ,
-command => sub{print "bitmap\n"});
$m->command(-image => $image,
-command => sub{print "image\n"});

my $text = $mw->Button(-text => 'menu',
-command => [$m,'Popup'],
)->pack;
MainLoop;


Grüße, Christoph
#Kein Kommentar
 2007-11-15 21:56
#102461 #102461
User since
2007-06-09
575 Artikel
HausmeisterIn
[default_avatar]
komisch, es funktioniert definitiv nicht und die doku von widget kenn ich inzwischen auswendig :)

mein code:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 use warnings;
use strict;

use Tk;
use Tk::Photo;

my $mw = MainWindow->new;
my $popup_menu = $mw-> Menu (-type => 'menubar');
my $logo = $mw-> Photo (-file => "D:/pfad/icon.bmp");


$popup_menu-> command (-image => $logo, -command => sub {print "image";});
$popup_menu-> command (-label => "blabla", -command => sub {print "label";});


$popup_menu-> Popup (-popover => 'cursor', -overanchor => 's', -popanchor => 'nw');

MainLoop;

bei mir kommt da anstelle des bildes der text "(image)".

ist das bei euch auch so?

\\edit: also mit dem menubutton funktioniert's, ich brauch aber ein rechtsklickmenü :(
Gerade weil wir alle in einem Boot sitzen, sollten wir froh sein, dass nicht alle auf unserer Seite sind
ptk
 2007-11-15 22:59
#102466 #102466
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Mit deinem Beispiel bekomme ich unter FreeBSD/X11 einen Segmentation Fault. Davor gibt es noch die Fehlermeldung "Tk_MoveToplevelWindow called with non-toplevel window". Wenn ich -type => "menubar" ersatzlos streiche, funktioniert es aber wie gewohnt. Ich habe allerdings statt des BMPs ein GIF genommen, sollte aber keinen Unterschied machen.
#Kein Kommentar
 2007-11-16 12:12
#102476 #102476
User since
2007-06-09
575 Artikel
HausmeisterIn
[default_avatar]
danke, jetzt funktioniert es bei mir auch.
Gerade weil wir alle in einem Boot sitzen, sollten wir froh sein, dass nicht alle auf unserer Seite sind
<< >> 6 Einträge, 1 Seite



View all threads created 2007-11-15 19:00.