Zaprvé Swing má pokud vím problémy s tím, aby udělal na všech platformách úplně stejný grafický výstup. Další problém jsou zastaralé prvky, např. okno na procházení souborového systému je nic moc. Swing taky trpí problémy s výkonem, jednak se to v obecnosti píše jako jeho vlastnost, druhak jsem měl tu čest vyzkoušet tŕeba populární Jzy3d knihovnu na vykreslování grafu - je zo ve Swingu a seká se to opravdu dost i na silném stroji. Jednou v práci jsem pracoval na Swing aplikaci pro účetnictví a setkal jsem se touto nehorázností: potřeboval jsem do prvku tabulky (nevím jak se te komponentě říká) dát jiný prvek, checkbox. Klasická věc, která ve windorms je na 1 kliknutí, je naprostý nehorázný opruz ve Swingu, protože tam prostě nejdee do tabulky libolnou jinou komponentu přidat. Je to hnusná chyba návrhu a jak tady někdo psal, že Swing je z roku 1997, tak prosím, jde to vidět.
Swing default look and feel (Metal look and feel) je skvelý, jeden z mála skutočne čistých dizajnov.
Ak je potreba, môžu sa vytvoriť vlastné look and feels. Stačí si pozrieť IDE od JetBrains; oni si sami vytvorili
svoje vlastné vizuály.
Čo sa týka výkonu, tak ak niekto zle naprogramuje aplikáciu v C, tak to neznamená, že C je pomalé.
Swing bol úspešne využívaný pri komplexných, zložitých aplikáciách, takže nejaký trápny graf mu určite nerobí
problémy.
Komponenta sa volá JTable.
Pre pridanie JComboBox komponenty potrebujeme nasledovný kód (nič zložité):
private JTable createTable() {
model = new DefaultTableModel(new Object[] {"Brands"}, 5);
table = new JTable(model);
table.setRowHeight(25);
JComboBox box = new JComboBox();
box.addItem("Nokia");
box.addItem("Apple");
box.addItem("Mercedes");
box.addItem("Pepsi");
box.addItem("Lenovo");
TableColumn tc = table.getColumn("Brands");
tc.setCellEditor(new DefaultCellEditor(box));
return table;
}
Vyzerá to takto:

Swing je veľmi flexibilný a prepracovaný. Za dva týždne sa ho nenaučíte.