Ciao a tutti. Vorrei qualche consiglio su come stampare una scritta che si modifica col progredire del programma. Mi spiego meglio
"Caricando oggetto X di 30"
con X che si incrementa man mano.
Ciao a tutti. Vorrei qualche consiglio su come stampare una scritta che si modifica col progredire del programma. Mi spiego meglio
"Caricando oggetto X di 30"
con X che si incrementa man mano.
Sì ma vuoi visualizzarla dove?? In una applicazione console? O in una applicazione grafica all'interno di un qualche componente?Originariamente inviato da PeppinoCatrame
"Caricando oggetto X di 30"
con X che si incrementa man mano.
E si incrementa man mano in base a quale evento? Temporizzato?
Spiega qualcosa di più.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Semplice output testuale, si incrementa all'incrementarsi di un contatore.
Quindi nella console, deduco io. Prova questo programma:Originariamente inviato da PeppinoCatrame
Semplice output testuale, si incrementa all'incrementarsi di un contatore.
E nota l'utilizzo di \r che è il "carriage return" (porta il cursore a inizio linea ma senza far avanzare di linea).codice:public class Prova { public static void main (String[] args) throws InterruptedException { for (int i = 1; i <= 10; i++) { System.out.print ("\rConteggio " + i + " di 10"); Thread.sleep (1000); } System.out.println (); } }
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Sei sicuro che basti quel codice? ...non funge, stampa tutto incolonnato come con println
Dove lo stai provando? In una console grafica di un qualche ambiente di sviluppo? Lì non ti posso garantire un bel nulla. Deve essere una "vera" console, cioè che interpreta correttamente i caratteri ASCII di controllo. Questo perlomeno sulle console di Windows/Linux, dove so che funziona. Sui Mac dove il newline è proprio solo \r credo che non funzioni (proprio perché fa il newline) ma non ho modo di provare.Originariamente inviato da PeppinoCatrame
Sei sicuro che basti quel codice? ...non funge, stampa tutto incolonnato come con println
Questo ti può già dare l'idea che cercare di fare cose del genere è poco pulito e portabile. Cercare di fare su una console qualunque cosa più sofisticata del semplice "stampa e vai a capo" (es. a colori, spostamenti particolari, caratteri grafici, ecc...) porta sicuramente se non delle grane almeno questioni di portabilità.
P.S. Comunque sarebbe anche più corretto mettere un System.out.flush() dopo il print().
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Uso Eclipse. Cmq ho capito, anche leggendo su altri forum che non è una cosa "platform-independent" e quindi non mi interessa. Grazie cmq