Dopasowanie kolumn w JTable

0

Witam

Mam komponent JTable, który prezentuje dane pobierane z bazy danych. Czy istnieje możliwość dopasowania szerokości każdej z kolumn do długości danych przechowywanych w poszczególnych komórkach. Jesli ktoś wie proszę o pomoc. Dzięki.

Pozdrawiam

0

ja robię tak

int width=0;
//poniższy kod powtarzam dla każdej kolumny td
   int l=M.ilePixeli(10,"o",true);
   td.setPreferredWidth(l);
   width+=l+2;
//na końcu
tabela.doLayout();
Dimension d=tabela.getPreferredScrollableViewportSize();
d.width=width;
tabela.setPreferredScrollableViewportSize(d); 

mam kilka odmian funkcji ilePixeli(), poniżej dwie z nich
M (czytaj Moje funkcje uniwersalne) to klasa z "funkcjami globalnymi", tzn. z metodami static

    public static int ilePixeli(FontMetrics fm,int ileZnakow,String str)
    {
       StringBuffer s=new StringBuffer("");
       for (int i=0;i<ileZnakow;i++)
       {
            s.append(str);
       }
       return fm.stringWidth(s.toString());
    }
    //------------------------
    public static int ilePixeli(int ileZnakow,String str,boolean pogrub)
    {
        JLabel prototyp=new JLabel("Prototyp");
        Font f=prototyp.getFont();
        if(pogrub)
        {
            f=f.deriveFont(Font.BOLD);
        }
        FontMetrics fm=prototyp.getFontMetrics(f);
        return ilePixeli(fm,ileZnakow,str);
    }

pewnie można prościej, ale napisałem parę lat temu, działa i nie chce mi się upraszczać

1 użytkowników online, w tym zalogowanych: 0, gości: 1