Я пытаюсь закодировать свою программу, чтобы все компоненты на моем JFrame имели согласованную цветовую схему. Чтобы это сделать, я хотел использовать цикл Java для каждого цикла, чтобы влиять на каждый компонент того же типа. Я пробовал это так, чтобы покрасить JPanels, но это не повлияло.Java - выберите все компоненты GUI типа
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()'? – Dan
Привет, как я уже сказал, я не слишком разбираюсь в методах Java. Когда же мне нужно будет их использовать? @Dan – marcuthh
Я только что написал ответ. Если он не работает, напишите комментарий – Dan