Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    133

    problema con JScrollPane

    salve a tutti

    ho un piccolo problemino, che ora vi illustro: in una applicazione Java che sto cercando di realizzare (una specie di client IM con supporto alla codifica dei messaggi), i messaggi vengono visualizzati all'interno di uno JEditorPane (preferito alla JTextArea perche` supporta html), e "attorno" a questo JEditorPane vi e` un JScrollPane le cui due barre sono presenti solo se necessarie.

    Quello che vorrei ottenere io e` che ogni qualvolta viene aggiunto un messaggio alla schermata, se questo porta ad andare oltre la zona di scroll pane attualmente visibile, questo muova automaticamente la barra di scorrimento verticale alla FINE del testo, invece di riportarla ogni volta all'INIZIO... e` possibile? se si`, come?

    grazie.

    PS: vi riporto il pezzo di codice contenente l'inizializzazione

    codice:
    messageDisplay = new JEditorPane();
    messageDisplay.setContentType("text/html");
    scrollPane = new JScrollPane(messageDisplay);
    scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
    scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
    scrollPane.setAutoscrolls(true);

  2. #2
    Utente di HTML.it L'avatar di @DI3GO@
    Registrato dal
    Nov 2008
    Messaggi
    537
    come aggiorni il testo? con che funzione?
    Nipote: persona incompetente, con le soli doti di "copia/incolla" e la creazione automatica di siti internet ed interfaccie grafiche.Compie lavori apparentemente qualificati e richiesta una modifica sparisce in quatemala con i pochi soldi ottenuti.[...] Fonte la Diegonzelli

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    133
    semplicemente, il messaggio ricevuto viene aggiunto ad una stringa che contiene tutto il testo finora scritto o ricevuto, e poi viene invocato il metodo setText()

  4. #4
    Utente di HTML.it L'avatar di @DI3GO@
    Registrato dal
    Nov 2008
    Messaggi
    537
    se non erro con il metodo
    codice:
    miaTextArea.append( StringaDaAggiungere );
    Mi fa lo scroll automatico, ma non ne sono certo, semmai faccio qualche tentativo e ti do conferma!!




    CONFERMO!!!
    Nipote: persona incompetente, con le soli doti di "copia/incolla" e la creazione automatica di siti internet ed interfaccie grafiche.Compie lavori apparentemente qualificati e richiesta una modifica sparisce in quatemala con i pochi soldi ottenuti.[...] Fonte la Diegonzelli

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    133
    ottimo! grazie mille! allora devo solo sistemare il modo in cui e` gestito il testo... grazie ancora!

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da @DI3GO@
    Mi fa lo scroll automatico, ma non ne sono certo
    Lo fa solo se il caret è (e resta) al fondo di tutto il testo.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  7. #7
    Utente di HTML.it L'avatar di @DI3GO@
    Registrato dal
    Nov 2008
    Messaggi
    537
    Originariamente inviato da andbin
    Lo fa solo se il caret è (e resta) al fondo di tutto il testo.
    L'ho provato prima, anche tornando in cima al TextArea e senza problemi è ritornato in fondo.
    Ho semplicemente impostato il VerticalScroll ALWAYS e HorizontalScroll NEVER, nessun Wrap di nessun tipo...
    Nipote: persona incompetente, con le soli doti di "copia/incolla" e la creazione automatica di siti internet ed interfaccie grafiche.Compie lavori apparentemente qualificati e richiesta una modifica sparisce in quatemala con i pochi soldi ottenuti.[...] Fonte la Diegonzelli

  8. #8
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da @DI3GO@
    L'ho provato prima, anche tornando in cima al TextArea e senza problemi è ritornato in fondo.
    Hai riposizionato il caret???
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  9. #9
    Utente di HTML.it L'avatar di @DI3GO@
    Registrato dal
    Nov 2008
    Messaggi
    537
    Originariamente inviato da andbin
    Hai riposizionato il caret???
    Mi sa che non ci siamo intesi...anzi più probabile che io non stia capendo...
    Il caret è lo scroll, la barra, "quel coso rettagolare che si sposta", insomma sì, lo spostato in alto ed una volta che o premutoil pulsante che mi fa l'append questo è tornato in fondo!
    Nipote: persona incompetente, con le soli doti di "copia/incolla" e la creazione automatica di siti internet ed interfaccie grafiche.Compie lavori apparentemente qualificati e richiesta una modifica sparisce in quatemala con i pochi soldi ottenuti.[...] Fonte la Diegonzelli

  10. #10
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da @DI3GO@
    Il caret è lo scroll, la barra
    Noooooooooo! Il "caret" è quel cursore verticale intermittente che indica il punto di inserimento nel testo.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.