首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使TableCellEditor颜色与外观匹配

使TableCellEditor颜色与外观匹配
EN

Stack Overflow用户
提问于 2009-05-14 10:49:52
回答 1查看 3K关注 0票数 2

所以我有自定义的CellEditors和CellRenderers,虽然我正在做

代码语言:javascript
复制
component.setForeground(isSelected ? table.getSelectionForeground() : table.getForeground());
component.setBackground(isSelected ? table.getSelectionBackground() : table.getBackground());
component.setOpaque(true);

在我的getTableCellRendererCompoent中,颜色只在其他行上匹配,因为大多数的hte外观和感觉我似乎试图替换它们。我如何能够以一种与表的其他部分相匹配的方式来提取颜色值?我也非常希望能够制作漂亮的边框,以匹配DefaultTableCellRenderer的渲染器。

我已经尝试过剖析DefaultTableCellRenderer,但是我在寻找这个UI对象时却迷失了方向。我只需要从UIManager中提取正确的属性吗?在正确的方向上领先将是非常感谢的。

谢谢大家这个网站太棒了。约书亚

EN

回答 1

Stack Overflow用户

发布于 2009-08-14 04:11:48

是的,你应该使用摇摆调色板的颜色。例如:

代码语言:javascript
复制
final Color tableBackground = javax.swing.UIManager.getDefaults().getColor("Table.background");

以下是表的颜色键值:

  • Table.background Table.dropLineColor
  • Table.dropLineShortColor
  • Table.focusCellBackground
  • Table.focusCellForeground
  • Table.foreground Table.gridColor
  • Table.selectionBackground
  • Table.selectionForeground
  • Table.sortIconColor
  • TableHeader.background
  • TableHeader.focusCellBackground
  • TableHeader.foreground

或者,您也可以使用系统颜色。例如:

正常背景: SystemColor.window 精选背景: SystemColor.textHighlight 普通前景: SystemColor.text 选择前台: SystemColor.textText

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/862677

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档