Created
December 18, 2013 01:10
-
-
Save resarahadian/8015697 to your computer and use it in GitHub Desktop.
Membuat Highlight Warna JTable
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import java.awt.Color; | |
import java.awt.Component; | |
import java.awt.EventQueue; | |
import javax.swing.JFrame; | |
import javax.swing.JPanel; | |
import javax.swing.UIManager; | |
import javax.swing.border.EmptyBorder; | |
import javax.swing.JScrollPane; | |
import javax.swing.JTable; | |
import javax.swing.table.DefaultTableCellRenderer; | |
import javax.swing.table.DefaultTableModel; | |
import javax.swing.table.TableColumn; | |
import javax.swing.JLabel; | |
import javax.swing.ImageIcon; | |
@SuppressWarnings("serial") | |
public class frameTableHighLights extends JFrame { | |
private JPanel contentPane; | |
private JScrollPane scrollPane; | |
private JTable tabel; | |
DefaultTableModel tabelModel; | |
String header[] = {"ID", "Nama", "Harga"}; | |
String isi[][] = {{"B001","Kecap DEF", "6000"}, {"B002","Mie Goreng", "1800"}, {"B003","Saus Sambal", "4500"}, {"B004","Susu Ultra", "3200"}}; | |
private JLabel lblWall; | |
private TableColumn kolomTabel; | |
/** | |
* Create the frame. | |
*/ | |
public frameTableHighLights() | |
{ | |
setTitle("Highligt JTable"); | |
setResizable(false); | |
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); | |
setBounds(100, 100, 674, 380); | |
contentPane = new JPanel(); | |
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); | |
setContentPane(contentPane); | |
contentPane.setLayout(null); | |
scrollPane = new JScrollPane(); | |
scrollPane.setBounds(16, 21, 447, 293); | |
contentPane.add(scrollPane); | |
tabelModel = new DefaultTableModel(isi,header); | |
tabel = new JTable(); | |
tabel.setModel(tabelModel); | |
kolomTabel = tabel.getColumnModel().getColumn(0); | |
kolomTabel.setCellRenderer(new CustomTableCellRenderer()); | |
kolomTabel = tabel.getColumnModel().getColumn(1); | |
kolomTabel.setCellRenderer(new CustomTableCellRenderer()); | |
kolomTabel = tabel.getColumnModel().getColumn(2); | |
kolomTabel.setCellRenderer(new CustomTableCellRenderer()); | |
scrollPane.setOpaque(false); | |
scrollPane.getViewport().setOpaque(false); | |
tabel.setShowGrid(false); | |
scrollPane.setViewportView(tabel); | |
JLabel lblIcon = new JLabel(""); | |
lblIcon.setIcon(new ImageIcon("/home/resa/Aplikasi Java/SwingJava/src/highlightColorTable/icon.png")); | |
lblIcon.setBounds(508, 30, 152, 129); | |
contentPane.add(lblIcon); | |
lblWall = new JLabel(""); | |
lblWall.setIcon(new ImageIcon("/home/resa/Aplikasi Java/SwingJava/src/highlightColorTable/west.jpg")); | |
lblWall.setBounds(0, -13, 672, 367); | |
contentPane.add(lblWall); | |
setLocationRelativeTo(null); | |
} | |
public class CustomTableCellRenderer extends DefaultTableCellRenderer | |
{ | |
public Component getTableCellRendererComponent(JTable tabel, Object obj, boolean isSelected, boolean hasFocus, int baris, int kolom) | |
{ | |
Component comp = super.getTableCellRendererComponent(tabel, obj, isSelected, hasFocus, baris, kolom); | |
if(isSelected) | |
{ | |
comp.setBackground(Color.ORANGE); | |
} | |
else | |
{ | |
comp.setBackground(Color.WHITE); | |
} | |
return comp; | |
} | |
} | |
/** | |
* Launch the application. | |
*/ | |
public static void main(String[] args) { | |
EventQueue.invokeLater(new Runnable() { | |
public void run() { | |
try { | |
UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel"); | |
frameTableHighLights frame = new frameTableHighLights(); | |
frame.setVisible(true); | |
} catch (Exception e) { | |
e.printStackTrace(); | |
} | |
} | |
}); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment