我正在尝试为需要用户注意的选项卡创建一个带有标记的 JTabbedPane。它将用于设置对话框。
这意味着背景颜色应该是动态变化的,并且与选项卡选择无关。
元素的验证正在工作(例如无效文本字段周围的红色边框),但我无法通过设置背景颜色来标记包含选项卡。查找包含选项卡并传播无效状态的代码已准备就绪。唯一的一点是:setBackgroundAt(index, Color);
完全没有效果。
我已经验证了语句已经到达并且索引是正确的。但什么也没有发生。也repaint();
没有SwingUtilities.updateComponentTreeUI(this);
帮助。
我发现了几个人们为不同的标签赋予不同颜色的例子。这是我开始使用的:Colorize a tab in a JTabbedPane using java swing
但是我发现的所有示例都静态设置了颜色(在显示 JFrame 之前),更糟糕的是,所选选项卡的背景颜色消失了。
由于我的应用程序还允许选择外观和感觉,因此解决方案应该是 L&F 独立的。
顺便说一句:标签周围的红色边框而不是背景也可以。