[Java lista] gui
Zsombor
gzsombor at gmail.com
2007. Jan. 19., P, 12:50:40 CET
On 1/19/07, MaglĂłdszki Viktor <bocios at citromail.hu> wrote:
>
> a neten találtam 1 ilyen renderer-t:
>
> private String color;
> private int rowToColor = -1;
>
> public void setUp(String color,int row) {
> this.color = color;
> this.rowToColor = row;
> }
>
> public Component getTableCellRendererComponent(JTable table, Object value,
> boolean isSelected, boolean hasFocus, int row, int column) {
> Component c = super.getTableCellRendererComponent
> (table,value,isSelected,hasFocus,row,column);
> if (row == rowToColor)
> c.setBackground(Color.decode(color));
> return c;
> }
>
>
> ciklusban mindig setUp-ot hivok atadva a szint es a sorszamot
> szinez is tehat elvileg mukodik nem ?
> csak ha rateszek 1 ablakot / barmit akkor az utolso sor szinevel atszinezi
> az egesz tablat
>
Továbbra sem lehet Ă©rteni, hogy milyen ciklusban mĂłdosĂtgatod a dolgaidat. A
swing-et Ăşgy Ă©rdemes használni, hogy egyszer felĂ©pĂted az objektumaidat,
aztán átadod a táblának, és békén hagyod őket. Ezenkivül azt érdemes
megérteni, hogy egy táblázatnak egy renderer-je van, és nem minden
cellához/sorhoz tartozik külön. Ezenkivül a legtöbb renderer takarékossági
okokból minimális számu tableCellRendererComponent-el dolgozik,
Ă©rtsd,többnyire 1-el. S ha annak az egynek mĂłdosĂtod a hátterĂ©t, akkor az
úgy is marad. Amugy az itt mellékelt kód rossz, mert feltehetőleg a szerző
olyan renderert akart irni, amelyik egy adott sor hátterĂ©t mĂłdosĂtja,
viszont mivel nincs background beállitva, amikor row!=rowToColor ezért a
többi sor szine elég összevissza lesz, attól függően, hogy a renderelést
éppen hogyan végezte a swing. Pl a rowToColor utáni sorok is megadott
szinüek lesznek, ha a rowToColor sor látszik éppen a táblázatban. Stb.
ĂĽdv
Zs
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: http://javagrund.hu/pipermail/javalist/attachments/20070119/eb09854b/attachment.html
További információk a(z) Javalist levelezőlistáról