标题:带有背景的表格
只看楼主
gunshui
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-3-17
 问题点数:0 回复次数:3 
带有背景的表格

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;
import java.awt.Graphics;

public class TabbedDemo{
public static void main(String[] args){
JFrame frame=new JFrame("Tabel");
frame.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
ImageTable table=new ImageTable(15,3);
for(int i=0;i<table.getRowCount();i++){
for(int j=0;j<table.getColumnCount();j++){
table.setValueAt("("+i+","+j+")",i,j);
}
}

JScrollPane pane=new JScrollPane(table);
frame.getContentPane().add(pane);

frame.pack();
frame.show();
}
}

class ImageTable extends JTable{
ImageIcon image=new ImageIcon("1.jpg");

public Component prepareRender(TableCellRenderer render,int row,int column){
Component c=super.prepareRenderer(render,row,column);
if(c instanceof JComponent)
((JComponent)c).setOpaque(false);
return c;
}

public void paint(Graphics g){
setOpaque(false);
Dimension d=getSize();
for(int x=0;x<d.width;x+=image.getIconWidth())
for (int y=0;y<d.height;y+=image.getIconHeight())
g.drawIamge(image.getImage(),x,y,null,null);
super.paint(g);
}
}

搜索更多相关主题的帖子: import 表格 awt java public 
2006-03-27 23:39
gunshui
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-3-17
得分:0 

程序有点小错误,我检查不出来
还有就是
public Component prepareRender(TableCellRenderer render,int row,int column){
Component c=super.prepareRenderer(render,row,column);
if(c instanceof JComponent)
((JComponent)c).setOpaque(false);
return c;
}
这一端是做什么用的?什么机理呢?
谢谢

2006-03-27 23:41
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
得分:0 
首先你的ImageTable没有提供有参数的构造函数,但是你在创造它的实例的时候却用了有参构造函数,这当然通不过编译,
还有你的字打错了
g.drawIamge(image.getImage(),x,y,null,null);
应该是g.drawImage();
写程序以后要小心,千万不要出现这样的错误
至于prepareRender我也不知道是干什么用的,你可以自己去查看java自带的doc你在那里可以找到你想问的问题的大部份答案,一定要学会自己查看DOC文档

可惜不是你,陪我到最后
2006-03-28 10:21
gunshui
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-3-17
得分:0 

明白
谢谢

2006-03-28 17:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-53286-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.109049 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved