Perl/Tk Canvas-Widget

Perl/Tk Canvas-Widget

am 19.12.2007 15:25:02 von Berthold

Hallo Zusammen,

ich möchte in ein vorhandenes Canvas-Widget Text schreiben.

Es funktioniert:
$canvas->createText(165,55, -text =3D> 'Hallo');

Folgendes funktioniert nicht:
$coord =3D "165,55";
$canvas->createText("$coord", -text =3D> 'Hallo');

Übergibt man die Koordinaten als Variable kommt diese Fehlermeldung:
wrong coordinates: expectet 2, got 1
Es scheint als möchte das Tk-Modul die Variable als Fließkommazahl
lesen und nicht als x,y Koordinate?

Für Hilfe besten Dank!

Gruß Berthold

Re: Perl/Tk Canvas-Widget

am 19.12.2007 15:32:28 von Frank Seitz

Berthold wrote:

> ich möchte in ein vorhandenes Canvas-Widget Text schreiben.
>
> Es funktioniert:
> $canvas->createText(165,55, -text => 'Hallo');
>
> Folgendes funktioniert nicht:
> $coord = "165,55";
> $canvas->createText("$coord", -text => 'Hallo');
>
> Übergibt man die Koordinaten als Variable kommt diese Fehlermeldung:
> wrong coordinates: expectet 2, got 1
> Es scheint als möchte das Tk-Modul die Variable als Fließkommazahl
> lesen und nicht als x,y Koordinate?

165,55 ist keine Fließkommazahl, sondern sind ZWEI Parameter:

$x = 165;
$y = 55;
$canvas->createText($x, $y, -text => 'Hallo');

Grüße
Frank
--
Dipl.-Inform. Frank Seitz; http://www.fseitz.de/
Anwendungen für Ihr Internet und Intranet
Tel: 04103/180301; Fax: -02; Industriestr. 31, 22880 Wedel

Re: Perl/Tk Canvas-Widget

am 19.12.2007 15:38:49 von Moritz Lenz

Hallo,

Berthold wrote:
> Es funktioniert:
> $canvas->createText(165,55, -text =3D> 'Hallo');
>
> Folgendes funktioniert nicht:
> $coord =3D "165,55";
> $canvas->createText("$coord", -text =3D> 'Hallo');

Der große Unterschied ist, dass $coord eine Variable ist, 166, 55 aber =
zwei.

Du kannst sowas machen:

my @coord =3D (166, 55);
$canvas->createText(@coord, -text =3D> 'Hallo');

> Es scheint als möchte das Tk-Modul die Variable als Fließkommazahl
> lesen und nicht als x,y Koordinate?

Das ist keine Fließkommazahl. 166,55 ist eine Liste aus zwei Integern,
166 und 55.

Grüße,
Moritz

--=20
Moritz Lenz
http://perl-6.de/ http://moritz.faui2k3.org/

Re: Perl/Tk Canvas-Widget

am 19.12.2007 15:49:56 von Berthold

Jetzt geht es - vielen Dank für die schnelle Hilfe!

Viele Grüße Berthold




On 19 Dez., 15:38, Moritz Lenz wrote:
> Hallo,
>
>
>
> Berthold wrote:
> > Es funktioniert:
> > $canvas->createText(165,55, -text =3D> 'Hallo');
>
> > Folgendes funktioniert nicht:
> > $coord =3D "165,55";
> > $canvas->createText("$coord", -text =3D> 'Hallo');
>
> Der große Unterschied ist, dass $coord eine Variable ist, 166, 55 aber z=
wei.
>
> Du kannst sowas machen:
>
> my @coord =3D (166, 55);
> $canvas->createText(@coord, -text =3D> 'Hallo');
>
> > Es scheint als möchte das Tk-Modul die Variable als Fließkommazahl
> > lesen und nicht als x,y Koordinate?
>
> Das ist keine Fließkommazahl. 166,55 ist eine Liste aus zwei Integern,
> 166 und 55.
>
> Grüße,
> Moritz
>
> --
> Moritz Lenzhttp://perl-6.de/ http://moritz.faui2k3.org/