Hi :wink:,
Mein Probelm ist folgendes...
Ich habe eine JEditorPane(chat) für meinen Chat benutzt. Das Problem ist das ich da mit HTML arbeite und das nicht angezeigt wird wenn ich
mache. Deswegen lass ich alle Nachrichten in ein Vector speichern und dann mit chat.setText(VECTOR) reinschreiben.
Dann hab ich eine
;
Wenn ich jetzt mehrere Texte schreibe dann flackert das ohne Ende (chat.setDoubleBufferd(true) hab ich schon drin).
Ich denke das liegt daran, dass die ScrolledPane immer wieder von ganz oben bis nach unten Scrollen muss.
Mein kompletter Code:
Hat jemand eine Idee?
Mein Probelm ist folgendes...
Ich habe eine JEditorPane(chat) für meinen Chat benutzt. Das Problem ist das ich da mit HTML arbeite und das nicht angezeigt wird wenn ich
Code:
chat.setText(chat.getText() + message);
Dann hab ich eine
Code:
JScrolledPane scrollChat = new JScrolledPane(chat)
Wenn ich jetzt mehrere Texte schreibe dann flackert das ohne Ende (chat.setDoubleBufferd(true) hab ich schon drin).
Ich denke das liegt daran, dass die ScrolledPane immer wieder von ganz oben bis nach unten Scrollen muss.
Mein kompletter Code:
Code:
JEditorPane chat;
JScrollPane scrollChat;
private Vector msg = new Vector();
protected void addMessage(String message)
{
msg.add(message);
String mess = msg.toString();
chat.setText(mess);
chat.setCaretPosition(chat.getDocument().getLength());
}
chat = new JEditorPane();
chat.setEditable(false);
chat.setAutoscrolls(true);
chat.setBorder( new BevelBorder(BevelBorder.RAISED) );
chat.setContentType("text/html;charset=UTF16");
chat.setDoubleBuffered(true);
scrollChat = new JScrollPane(chat);
scrollChat.setWheelScrollingEnabled(true);
scrollChat.setForeground(Color.BLACK);
scrollChat.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
scrollChat.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
scrollChat.getViewport().add(chat);
Hat jemand eine Idee?