Re^2: Perform. in JTable bei verw. von CellRendere
Danke für die Info.
Ich hätte aber nochmals Fragen dazu.
Moin
Der CellRenderer wird doch bei jedem Klicken, Scrollen und
jeder Mausbewegung durchlaufen.
Nicht immer: Wenn du z.B. eine JScrollPane mit Doublebuffering
hinbekommst wird nicht immer neu aufgebaut.
Wie macht man den das mit Doublebuffering ? Gibt es dazu irgendwo Infos. Geht das auch beim Baum ?
Ausserdem werden nur die Zellen neu gemalt die 1. angezeigt
werden und sich 2. geändert haben können. Der Rest wird
kopiert.
Wie macht sich das auf die
Performance im Tree oder der Tabelle bemerkbar wenn der
Renderer z.B. ein Panel ist, welches zwei Labels mit Icon und
eine Textarea enthält.
Sie wird langsamer sein als bei z.B. einem JLabel. Aber
merkbar langsamer... ich glaub nicht.
Gibt es Tricks beim Umgang mit den Renderern ? Worauf sollte
man achten ?
kein "new" im render-code selbst.
keinerlei Layout-befehle/abarbeitung im Code selbst.
Kein "new" !? Wenn ich doch einen eigenen Renderer mit z.B. einem Label fürs Icon und einer Textarea machen will muß ich doch das Label und die Textarea mit "new" anlegen. "New" brauche ich doch immer wenn ich eigene Componenten auf einem Renderer (extends JPanel) unterbringen möchte. Oder ?
Oder hat der Renderer keinen Einfluß auf die Performance egal
wie komplex er aufgebaut ist ?
nee, wenn du z.B. eine java3D-Canvas als Cell-Render benutzt
geht die Performance in den Keller. (probiert bei
3x3-Tabellen)
Sorry jetzt kommt noch eine Anfängerfrage. Was sind java3D-Canvas ?
Ich kenne bisher nur AWT und Swing.
Danke
Arni
cu