Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]4649[/thread]

insert: Text in ein Textfeld einfügen

Leser: 1


<< >> 4 Einträge, 1 Seite
achso
 2003-09-15 22:34
#43400 #43400
User since
2003-09-03
8 Artikel
BenutzerIn
[default_avatar]
Hallo,
ich habe ein Perl/Tk-Programm das ein Textfeld enthält und möchte einen String an eine bestimmter Stelle einfügen, was aber leider nicht so klappt.
Anschließend mein kleines Test-Skript, um mein Problem zu verdeutlichen:


Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/usr/bin/perl
use strict;
use warnings;
use Tk;

my $mw = MainWindow -> new;

my $textfeld = $mw -> Text() -> pack();


my $z5 = "Zeile 5\n";
$textfeld -> insert("5.0", $z5);

MainLoop;


Im Textfeld wird $z5 nicht in Zeile 5 eingefügt sondern direkt an den Anfang, genauso als ob ich 'end' als Index verwendet hätte.

Kann mir jemand einen Tipp geben um den 'Knoten' zu lösen.

Im voraus herzlichen Dank

achso

Bearbeitet von Crian: CODE-Tags hinzugefügt.\n\n

<!--EDIT|Crian|1064174702-->
eisbeer
 2003-09-15 22:44
#43401 #43401
User since
2003-08-29
347 Artikel
BenutzerIn
[Homepage] [default_avatar]
Hm vielleicht so:

Code: (dl )
1
2
3
my $zeile = 5;
my $z5 = ("\n" x $zeile) . "Zeile 5";
$textfeld -> insert("1.0", $z5);


ungetestet...
Die meisten PC Probleme befinden sich zwischen Bildschirm und Stuhl...
Dubu
 2003-09-15 22:52
#43402 #43402
User since
2003-08-04
2145 Artikel
ModeratorIn + EditorIn

user image
Das insert() kann nur in bestehenden Text einfuegen. Wenn es noch keine fuenf Zeilen gibt, kommt der Text eben ans Ende.
achso
 2003-09-16 20:42
#43403 #43403
User since
2003-09-03
8 Artikel
BenutzerIn
[default_avatar]
Hallo an alle die geantwortet haben,
herzlichen Dank für den Hinweis.
Dass ich mit insert() nur in schon bestehenden Text, auch wenn er nur aus Zeilenumbrüchen besteht, einfügen kann, war mir nicht bewusst.
Nochmals vielen Dank.

Gruß achso
<< >> 4 Einträge, 1 Seite



View all threads created 2003-09-15 22:34.