【问题标题】:JList setenable to false without text color changeJList setenable 为 false 而不更改文本颜色
【发布时间】:2013-10-18 06:33:52
【问题描述】:

JList 中的项目曾经是黑色的 但是当我将 enable 设置为 false 时,它​​变成了灰色。如何保持黑色或将其设置回黑色?

【问题讨论】:

  • 如需尽快获得更好的帮助,请发帖SSCCE
  • 你为什么要欺骗你的用户?如果没有任何关于禁用列表的视觉线索,他们可能会感到困惑。

标签: java swing colors jlist


【解决方案1】:

列表项的视觉效果完全由 ListRenderer 控制。如果您真的坚持,请继承默认值并将其 enabled 属性设置为 true:

 public Component getListCellRendererComponent(....) {
      super.getListCellRendererComponent(....);
      setEnabled(true);
      return this;
 }

当心:让您的用户感到困惑绝不是一个好主意 - 如果没有任何视觉线索表明该列表已被禁用,他们可能会因为 f.i. 而迷失方向。选择没有按预期工作!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-09-23
    • 2012-01-18
    • 2013-08-04
    • 2011-05-21
    • 1970-01-01
    • 2017-03-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多