Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: Java
Expertise: All
Jan 6, 2000

Add Background Image to JTable

You can easily add a background image to swing's JTable. The following code shows you how:
Note that the image scrolls with the table.
  
public class BackgroundTable 
{ 
public static void main(String[] args) 
JFrame frame = new JFrame("Table Example"); 
frame.addWindowListener( new WindowAdapter() 
{ 
public void windowClosing(WindowEvent e) 
{ 
Window w = e.getWindow(); 
w.setVisible(false); 
w.dispose(); 
System.exit(0); 
} 
} ); 


JTable imTable = new JTable( 35, 3 ) 
{ 
public Component prepareRenderer 
(TableCellRenderer renderer, int row, int column) 
{ 
Component c = super.prepareRenderer( renderer, row, column); 
// We want renderer component to be 
//transparent so background image is visible 
if( c instanceof JComponent ) 
((JComponent)c).setOpaque(false); 
return c; 
} 

ImageIcon image = new ImageIcon( "FIREFALL.gif" ); 
public void paint( Graphics g ) 
{ 
// tile the background image 
Dimension d = getSize(); 
for( int x = 0; x < d.width; x += image.getIconWidth() ) 
for( int y = 0; y < d.height; y += image.getIconHeight() ) 
g.drawImage( image.getImage(), x, y, null, null ); 
// Now let the paint do its usual work 
super.paint(g); 
} 
}; 
//make the table transparent 
imTable.setOpaque(false); 

JScrollPane jsp = new JScrollPane(imTable); 
frame.getContentPane().add(jsp); 

frame.pack(); 
frame.show(); 
} 
} 
Behrouz Fallahi
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap