栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

重写JTable的DefaultTableCellRenderer以将JTable中的所有单元格居中

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

重写JTable的DefaultTableCellRenderer以将JTable中的所有单元格居中

为了将相同的视觉装饰应用于所有渲染组件(如果这是您 真正
想要的,请小心,这可能会损害可用性!),您可以重写JTable的prepareRenderer方法:

@Overridepublic Component prepareRenderer(TableCellRenderer renderer, int row, int column) {    Component comp = super.prepareRenderer(...);    if (comp instanceof JLabel) {        ((JLabel) comp).setHorizontalAlignment(...);    }    return comp;}

顺便说一句:这种方法违反了
为应用程序需求将JSomething子类化的规则。您可能会考虑使用SwingX,它正式支持视觉装饰渲染组件。因此,您可以在表中注册一个荧光笔,而不是子类化:

JXTable table = ...table.addHighlighter(new AlignmentHighlighter(CENTER), HighlightPredicate.ALWAYS);


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/435198.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号