【发布时间】:2016-06-21 08:29:46
【问题描述】:
我正在尝试对我的程序进行编码,以便我的 JFrame 上的所有组件都具有一致的配色方案。为了能够做到这一点,我想使用 Java 的 for-each 循环来影响相同类型的每个组件。我试过这样给 JPanel 上色,但没有效果。
public void colourGUI()
{
for (Component comp : this.getComponents())
{
if (comp instanceof JPanel)
{
((JPanel) comp).setOpaque(true);
comp.setBackground(Color.gray);
}
}
}
我原以为这会起作用,但是当我加载应用程序时,它并没有生效。
我对 Java 相当陌生,我以前曾将 C# 用于此类程序,而我会使用 C# 的 OfType<> 方法。我希望 Java 会有某种等价物,但我还没有找到任何东西。
谁能指出我正确的方向来完成我想做的事情?我想我错过了一些非常明显的东西!
谢谢, 标记
【问题讨论】:
-
难道你没有使用
repaint()和revalidate()? -
嗨,就像我说的,我对 Java 的方法并不太熟悉。我什么时候需要在哪里使用这些? @丹
-
我刚刚发布了一个答案。如果它不起作用,请发表评论
-
已回复您的帖子。认为它几乎就在那里,但由于某种原因仍然没有触发。 @丹
-
我才看到你的上一篇文章,我现在测试一下,让你知道。谢谢@丹
标签: java swing components