-1
Есть ли способ рисовать JPanel, используя данные из другого класса? Вот код, который я попробовал:В Java, как я могу использовать JPanel, используя данные из другого класса?
class overlay extends JPanel {
public void paintComponent(Graphics g, lineStore data) {
super.paintComponent(g);
this.setBackground(Color.WHITE);
g.setColor(Color.BLUE);
for (int i = 0; i < data.length; i++) {
g.drawLine(data[i].x1,data[i].y1,data[i].x2,data[i].y2);
}
}
}
Да, но вам нужно передать эти данные на панель с помощью другого метода и вызвать перерисовку. Вы можете использовать [Model-View-Controller] (http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller) и [Pattern наблюдателя] (http: // www. oodesign.com/observer-pattern.html) – MadProgrammer
Попробуйте подумать о том, как API уже делает это, например, 'setBackground' – MadProgrammer
Если я переместил массив в класс наложения и сделал что-то вроде frame.redraw() вправо место, это сделает трюк? – Aeglen