Problem mit new Komponente beim neu Zeichnen

chriss_2oo4

Erfahrenes Mitglied
Hi,

durch das Betätigen der Entertaste wird meine Komponente (JTextPane) neu erstellt (new), mit neuem Inhalt gefüllt und zum Frame hinzugefügt.

Dadurch entsteht kurz eine Art Flackern, wie kann ich das verhindern?

Lg Chriss
 
Hallo,

was meinst du mit neu erstellt? Ist sie schon ein TextPane vorhanden oder komplett neu erstellt?

MFG

Sascha
 
Hi,

wenn sich der Inhalt meiner HTML-Seite ändert wird folgende Methode ausgeführt:

Code:
public void ReloadTxtChat()
	{
		txtChat = new JTextPane();
		jScrollPane1.setViewportView(txtChat);
		txtChat.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED));
		txtChat.setContentType("text/html");
		txtChat.setEditable(false);
		try
		{
			java.io.File filePath = new java.io.File(Main.DIR_DATA, strFilename);
			java.net.URL urlPath = filePath.toURL();
			txtChat.setPage(urlPath.toString());
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}
	}

Wenn ich nur folgenden Code-Teil ausgeführt habe - was theoretisch ja auch ausreichen müsste - wurde der Inhalt nicht aktualisiert.

Code:
try
		{
			java.io.File filePath = new java.io.File(Main.DIR_DATA, strFilename);
			java.net.URL urlPath = filePath.toURL();
			txtChat.setPage(urlPath.toString());
		}
		catch(Exception e)
		{
			e.printStackTrace();
		}

Wenn ich nun die o. g. (erster Code) Methode ausführe ist ganz kurz ein leeres TextPane zu sehen dann füllt sich die TextArea erst mit Text. Dieser Vorgang sieht dann aus wie ein kurzes Flimmern.

Ich müsste nun das Zeichnen des Frames bevor ich die Methode ausführe anhalten, und erst dann wieder zeichnen wenn die Methode fertig ist.

Lg
 

Neue Beiträge

Zurück