Schrift
[thread]13120[/thread]

Tk::Zinc, größe von rectangles ändern

Leser: 1


<< >> 5 Einträge, 1 Seite
#Kein Kommentar
 2009-02-09 16:50
#118754 #118754
User since
2007-06-09
575 Artikel
HausmeisterIn
[default_avatar]
hallo,

ich suche eine möglichkeit die größe und position von rectangles zu ändern.
bei normalen zinc-elementen wird ja die position durch den parameter -position bestimmt. bei den rectangles gibt es die funktion jedoch nicht, denn rectangles werden ja so erstellt:
Code: (dl )
1
2
3
4
5
$zinc->add(
'rectangle', 1,
[$x_1,$y_1,$x_2,$y_2],
#weitere optionen...
);

also kann ich die position (und beim rechteck gleichzeitig auch die größe) nicht durch die ->itemconfigure() methode änden.

nach durchforsten des manuals von zinc, bin ich jedoch nur auf die translate-methode gestoßen, die sachen zwar verschieben aber nicht deren größe ändern kann

hoffe, dass es hier ein paar spezialistInnen für dieses doch eher 'exotische' modul gibt...
Gerade weil wir alle in einem Boot sitzen, sollten wir froh sein, dass nicht alle auf unserer Seite sind
Spieler
 2009-02-09 19:31
#118756 #118756
User since
2007-09-24
70 Artikel
BenutzerIn
[default_avatar]
Hallo,

gibt es nicht 'coords($tag_or_id, @new_coords) wie beim Canvas ??

Christoph
#Kein Kommentar
 2009-02-09 20:02
#118757 #118757
User since
2007-06-09
575 Artikel
HausmeisterIn
[default_avatar]
habe ich auch schon probiert. bei mir kommt dann: malformed coord list at C:/Perl/lib/Tk.pm line 252..

probiert habe ich es mit:
Code: (dl )
$zinc->coords($box,$x_1,$y_1,$x_2,$y_2);


edit:// ahh! man muss es mit einer skalaren liste probieren! danke schön, spieler! und auch an dominicn!
Gerade weil wir alle in einem Boot sitzen, sollten wir froh sein, dass nicht alle auf unserer Seite sind
dominicn
 2009-02-09 20:04
#118758 #118758
User since
2003-08-08
327 Artikel
BenutzerIn
[default_avatar]
#Kein Kommentar+2009-02-09 19:02:05--
habe ich auch schon probiert. bei mir kommt dann: malformed coord list at C:/Perl/lib/Tk.pm line 252..

probiert habe ich es mit:
Code: (dl )
$zinc->coords($box,$x_1,$y_1,$x_2,$y_2);

Und wenn du die Koordinaten wie oben in rechteckige Klammern setzt?
Code (perl): (dl )
$zinc->coords($box, [$x_1, $y_1, $x_2, $y_2]);
Spieler
 2009-02-09 21:38
#118761 #118761
User since
2007-09-24
70 Artikel
BenutzerIn
[default_avatar]
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use strict;
use warnings;

use Tk;

my $mw = MainWindow->new ;

my $z = $mw->Zinc()->pack;
my $r = $z->add('rectangle', 1, [10,20,40,50]);
$mw->Button(-text => 'new Coords',
-command => sub{$z->coords($r,1,[100,100,200,200])}
)->pack;

MainLoop;
So geht es bei mir,
Siehe auch t/Coords.t ;)
Christoph
<< >> 5 Einträge, 1 Seite



View all threads created 2009-02-09 16:50.