Ok allora stavo guardando il primo caso...Io faccio digitare all'utente il messaggio in una jTextField e poi lo invio sulla JTextPane ma ora mi sorge una domanda..nella JTextField si puo' "sostituire il testo" con varie emoticons al "volo" come dicevi tu? O permette solo la visualizzazione di caratteri??
O sostuire al volo intendi che una volta inviato il messaggio al JTextPane, l'elaborazione lo sostuisce li dentro(dentro al JTextPane stesso)??