Error DefaultTableCellHeaderRenderer

255 views
Skip to first unread message

Robi Tanzil

unread,
Jul 11, 2010, 3:37:08 AM7/11/10
to jug-b...@googlegroups.com
Selamat Siang menjelang Sore,,


Akang2 semua mohon bantuannya,

Saya mencoba merubah ukuran height, font face, dan aligment dari Header JTabel menggunakan class yang extends ke DefaultTableCellHeaderRenderer, dengan kode dibawah ini :

import java.awt.Color;
import java.awt.Component;
import java.awt.Font;
import javax.swing.JLabel;
import javax.swing.JTable;
import javax.swing.SwingConstants;
import sun.swing.table.DefaultTableCellHeaderRenderer;
/**
 *
 * @author Robi Tanzil Ganefi
 */
public class THeaderRenderer extends DefaultTableCellHeaderRenderer{
    @Override
    public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
        JLabel label = (JLabel) super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
        label = new JLabel(value.toString());
        label.setFont(new Font("Verdana", Font.BOLD,12));
        label.setHorizontalAlignment(SwingConstants.CENTER);
        label.setForeground(Color.white);
        return label;
    }
}


Ketika program di RUN tidak ada masalah. Tabel pun bekerja dengan baik seperti gambah di bawah :

tabel.JPG



Tetapi ketika Clean and Build terjadi error dengan pesan berikut ini :

D:\cZaR_JackTheRipPeR\Data\Java\Swing\RawatInap\src\com\unikom\bi\rawatinap\view\golongan\THeaderRenderer.java:14: package sun.swing.table does not exist
import sun.swing.table.DefaultTableCellHeaderRenderer;
D:\cZaR_JackTheRipPeR\Data\Java\Swing\RawatInap\src\com\unikom\bi\rawatinap\view\golongan\THeaderRenderer.java:21: cannot find symbol
symbol: class DefaultTableCellHeaderRenderer
public class THeaderRenderer extends DefaultTableCellHeaderRenderer{
D:\cZaR_JackTheRipPeR\Data\Java\Swing\RawatInap\src\com\unikom\bi\rawatinap\view\golongan\FormGolongan.java:295: setHeaderRenderer(javax.swing.table.TableCellRenderer) in javax.swing.table.TableColumn cannot be applied to (com.unikom.bi.rawatinap.view.golongan.THeaderRenderer)
        jTabelGolongan.getColumnModel().getColumn(1).setHeaderRenderer(new THeaderRenderer());
D:\cZaR_JackTheRipPeR\Data\Java\Swing\RawatInap\src\com\unikom\bi\rawatinap\view\golongan\FormGolongan.java:296: setHeaderRenderer(javax.swing.table.TableCellRenderer) in javax.swing.table.TableColumn cannot be applied to (com.unikom.bi.rawatinap.view.golongan.THeaderRenderer)
        jTabelGolongan.getColumnModel().getColumn(0).setHeaderRenderer(new THeaderRenderer());
D:\cZaR_JackTheRipPeR\Data\Java\Swing\RawatInap\src\com\unikom\bi\rawatinap\view\golongan\THeaderRenderer.java:24: cannot find symbol
symbol  : variable super
location: class com.unikom.bi.rawatinap.view.golongan.THeaderRenderer
        JLabel label = (JLabel) super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
D:\cZaR_JackTheRipPeR\Data\Java\Swing\RawatInap\src\com\unikom\bi\rawatinap\view\golongan\THeaderRenderer.java:22: method does not override or implement a method from a supertype
    @Override
6 errors
D:\cZaR_JackTheRipPeR\Data\Java\Swing\RawatInap\nbproject\build-impl.xml:438: The following error occurred while executing this line:
D:\cZaR_JackTheRipPeR\Data\Java\Swing\RawatInap\nbproject\build-impl.xml:224: Compile failed; see the compiler error output for details.
BUILD FAILED (total time: 5 seconds)


Terima Kasih



:D
tabel.JPG

Robi Tanzil

unread,
Jul 11, 2010, 3:44:04 AM7/11/10
to jug-b...@googlegroups.com
Oia Lupa pertanyaanya, :D

1) Kok bisa 
package sun.swing.table does not exist? Pada hal pas pembuatan kan ada proses import?
2) Jadi untuk me-render Header JTabel baiknya seperti apa? Yang saya rubah itu hanya horizontal aligment, font face, font style, font size, dan foreground Header dengan warna putih. 

Untuk background dan Height dari JTabel itu sendiri saya lakukan perubahan menjadi darkgrey dan height 30 di dalam JFrame-nya, dengan kode seperti ini :

jTabelGolongan.getTableHeader().setBackground(Color.darkGray);
jTabelGolongan.getTableHeader().setPreferredSize(new Dimension(0, 30));

Mohon Bantuannya 


:D

Eko Kurniawan Khannedy

unread,
Jul 11, 2010, 5:17:12 AM7/11/10
to jug-b...@googlegroups.com
jangan pernah menggunakan kelas yang berapa dalam pakcage sun.* 
kalo mau pake yang dalam javax.*
soalnya Sun Oracle tidak akan bertanggung jawab atas perubahan kelas2 pada sun.* package


--
Eko Kurniawan Khannedy
Student of Indonesia Computer University
+6285292775999

Robi Tanzil

unread,
Jul 11, 2010, 5:36:03 AM7/11/10
to jug-b...@googlegroups.com
iah kang.. 
udah bener tadi yang 
package sun.swing.table di ganti sama javax.swing.table.DefaultTableCellRenderer

saya kira kalo nge-render header JTabel harus pake DefaultTableCellHeaderRenderer ternyata pake 
DefaultTableCellRenderer juga bisa



Maklum 

:D




2010/7/11 Eko Kurniawan Khannedy <echo.k...@gmail.com>
Reply all
Reply to author
Forward
0 new messages