Schrift
[thread]6405[/thread]

Cursor Position

Leser: 1


<< >> 5 Einträge, 1 Seite
utang
 2004-07-16 01:56
#84376 #84376
User since
2004-01-03
30 Artikel
BenutzerIn
[default_avatar]
Ich bin mir nicht ganz schlüssig ob ich hier richtig bin oder doch vlt. ins Grafik Forum gehört.

Wie kann ich in einer normalen Console die Cursor Position verändern. Geht es so oder muss ich mir n Modul von CPAN raussuchen?

Ein Beispiel wäre halt ein Zähler "[x] / 100 %" Oder was anderes was in richtig Fortschritsanzeige geht. sowas such ich ...

-schönen abend noch- =)
betterworld
 2004-07-16 02:16
#84377 #84377
User since
2003-08-21
2613 Artikel
ModeratorIn

user image
Fuer einfache Anwendungen gibt es "\r" und "\b", die setzen den Cursor an den Anfang der Zeile respektive ein Zeichen zurueck, wenn Du sie aufs Terminal schreibst.
Code: (dl )
1
2
3
4
5
6
7
8
9
10
use strict;
use IO::Handle;
print "Fortschritt: ";
for (0..9) {
print "$_";
IO::Handle::flush('STDOUT');
sleep 1;
print "\b";
}
print "fertig!\n";
betterworld
 2004-07-16 02:25
#84378 #84378
User since
2003-08-21
2613 Artikel
ModeratorIn

user image
Fuer erweiterte Anwendungen gibt es Term::Cap (siehe perldoc).
coax
 2004-07-16 02:31
#84379 #84379
User since
2003-08-11
457 Artikel
BenutzerIn
[default_avatar]
Term::ProgressBar

CursorPosition setzen (u.v.m.) kannst du mit Term::Control

Es geht aber auch per Hand (mit ANSI-Escape-Sequenzen):
Code: (dl )
print "\e[10;42H"; # Cursor in Zeile 10, Spalte 42


Dazu ein Link: ANSI-Escape-Sequenzen
,,Das perlt aber heute wieder...'' -- Dittsche
utang
 2004-07-16 15:54
#84380 #84380
User since
2004-01-03
30 Artikel
BenutzerIn
[default_avatar]
Merci ! Ich bedanke mich!
<< >> 5 Einträge, 1 Seite



View all threads created 2004-07-16 01:56.