为JTable添加JScrollPane给corner设置颜色
2009-09-22 00:00:00 来源:WEB开发网核心提示:有时候为了使JTable配合软件风格配置不同的颜色,当table的有表头以及添加了JScrollPane有ScollBar的时候会出现有个右上角有个区域的颜色是和底色是一样的,为JTable添加JScrollPane给corner设置颜色,如下图1:图一为了使得那个灰色区域和table header 的颜色一致,一时居
有时候为了使JTable配合软件风格配置不同的颜色,当table的有表头以及添加了JScrollPane有ScollBar的时候会出现有个右上角有个区域的颜色是和底色是一样的,如下图1:
图一
为了使得那个灰色区域和table header 的颜色一致,一时居然不知道如何是好,赶快查jdk的API文档发现这个图二:
图二
知道了这个corner component就好办了,那就添加如下:
jScrollPane1.getCorner(JScrollPane.UPPER_RIGHT_CORNER).setBackground(Color.red),
却又发现jScrollPane1.getCorner(JScrollPane.UPPER_RIGHT_CORNER)为NULL,原来要给他添加一个corner component,
那就再添加如下代码:
JLabel jb = new JLabel();
jb.setBackground(Color.black);
jScrollPane1.setCorner(JScrollPane.UPPER_RIGHT_CORNER, jb);
但是通过测试发现那个corner的颜色依然没有灰色,郁闷!!查找资料得将lable.setOpaque(true)
关于此方法的解释如下:
如果为 true,则该组件绘制其边界内的所有像素。否则该组件可能不绘制其某些或所有像素,从而允许其下面的像素透视出来。
对于 JComponent 而言,此属性的默认值是 false。但是对于大多数标准的 JComponent 子类(如 JButton 和 JTree),此属性的默认值是和外观相关的。
Tags:JTable 添加 JScrollPane
编辑录入:爽爽 [复制链接] [打 印]更多精彩
赞助商链接