Skip to content

Instantly share code, notes, and snippets.

@resarahadian
Created December 25, 2013 02:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save resarahadian/8119757 to your computer and use it in GitHub Desktop.
Save resarahadian/8119757 to your computer and use it in GitHub Desktop.
Disable Edit JTable
import java.awt.Color;
import java.awt.GradientPaint;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.Shape;
import java.awt.geom.RoundRectangle2D;
import javax.swing.*;
@SuppressWarnings("serial")
public class ClButtonTransparant extends JButton{
private static final Color TL = new Color(1f,1f,1f,.2f);
private static final Color BR = new Color(0f,0f,0f,.4f);
private static final Color ST = new Color(1f,1f,1f,.2f);
private static final Color SB = new Color(1f,1f,1f,.1f);
private Color ssc;
private Color bgc;
private int r = 8;
public ClButtonTransparant(String text) {
super(text);
}
public ClButtonTransparant(String text, Icon icon) {
super(text, icon);
}
@Override public void updateUI() {
super.updateUI();
setContentAreaFilled(false);
setFocusPainted(false);
setOpaque(false);
setForeground(Color.WHITE);
}
@Override protected void paintComponent(Graphics g) {
int x = 0;
int y = 0;
int w = getWidth();
int h = getHeight();
Graphics2D g2 = (Graphics2D)g.create();
g2.setRenderingHint(
RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
Shape area = new RoundRectangle2D.Float(x, y, w-1, h-1, r, r);
ssc = TL;
bgc = BR;
ButtonModel m = getModel();
if(m.isPressed()) {
ssc = SB;
bgc = ST;
}else if(m.isRollover()) {
ssc = ST;
bgc = SB;
}
g2.setPaint(new GradientPaint(x, y, ssc, x, y+h, bgc, true));
g2.fill(area);
g2.setPaint(BR);
g2.draw(area);
g2.dispose();
super.paintComponent(g);
}
}
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import javax.swing.JLabel;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.UIManager;
import javax.swing.SwingConstants;
@SuppressWarnings("serial")
public class frameDisableEditTable extends JFrame {
private JPanel contentPane;
private JScrollPane scrollPane;
private JTable tabel;
DefaultTableModel tabelModel;
String header[] = {"ID","Judul","Penerbit"};
String isi[][] = {{"B001","Tips dan Trik Java Swing","Candra Publisher"}, {"B002","Mastering HTML","C'r Publisher"}, {"B003","Blogger","Blogger Publisher"}};
private JLabel lblIcon;
private JLabel lblWall;
private JButton btnSimpan;
private JButton btnUbah;
private JButton btnHapus;
/**
* Create the frame.
*/
public frameDisableEditTable() {
setTitle("Disable Edit Table");
setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 589, 459);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
scrollPane = new JScrollPane();
scrollPane.setBounds(40, 122, 490, 174);
contentPane.add(scrollPane);
tabelModel = new DefaultTableModel(isi,header);
tabel = new JTable();
tabel = new JTable(tabelModel)
{
public boolean isCellEditable(int rowIndex, int colIndex)
{
return false;
}
};
scrollPane.setViewportView(tabel);
lblIcon = new JLabel("");
lblIcon.setIcon(new ImageIcon("/home/resa/Aplikasi Java/SwingJava/src/DisableEditTable/icon.png"));
lblIcon.setBounds(442, -13, 139, 135);
contentPane.add(lblIcon);
btnSimpan = new ClButtonTransparant("Simpan");
btnSimpan.setVerticalTextPosition(SwingConstants.BOTTOM);
btnSimpan.setHorizontalTextPosition(SwingConstants.CENTER);
btnSimpan.setIcon(new ImageIcon("/home/resa/Aplikasi Java/SwingJava/src/DisableEditTable/simpan.png"));
btnSimpan.setBounds(40, 308, 117, 57);
contentPane.add(btnSimpan);
btnUbah = new ClButtonTransparant("Ubah");
btnUbah.setVerticalTextPosition(SwingConstants.BOTTOM);
btnUbah.setHorizontalTextPosition(SwingConstants.CENTER);
btnUbah.setIcon(new ImageIcon("/home/resa/Aplikasi Java/SwingJava/src/DisableEditTable/ubah.png"));
btnUbah.setBounds(220, 340, 128, 57);
contentPane.add(btnUbah);
btnHapus = new ClButtonTransparant("Hapus");
btnHapus.setVerticalTextPosition(SwingConstants.BOTTOM);
btnHapus.setHorizontalTextPosition(SwingConstants.CENTER);
btnHapus.setIcon(new ImageIcon("/home/resa/Aplikasi Java/SwingJava/src/DisableEditTable/hapus.png"));
btnHapus.setBounds(408, 377, 122, 56);
contentPane.add(btnHapus);
lblWall = new JLabel("");
lblWall.setIcon(new ImageIcon("/home/resa/Aplikasi Java/SwingJava/src/DisableEditTable/wall.jpg"));
lblWall.setBounds(0, -13, 587, 446);
contentPane.add(lblWall);
setLocationRelativeTo(null);
}
/**
* 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");
frameDisableEditTable frame = new frameDisableEditTable();
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