/ / Zbuduj siatkę i niech mrugają kwadraty - java, jframe

Zbuduj siatkę i pozwól, aby kwadraty migały - java, jframe

Nie znam się dobrze na Javie i próbuję zbudować siatkę w oknie, ale nie jestem pewien, którą klasę powinienem rozszerzyć (jak JFrame) i która metoda jest najlepszym sposobem na uzyskanie tej siatki.

Moim celem jest stworzenie siatki i niech kwadraty będą mrugać losowo.

Wypróbowałem to JPanel, ale nie jestem pewien, czy jest to właściwy sposób

Zawartość JPanel = nowy JPanel (nowy GridLayout (4,4));

Odpowiedzi:

0 dla odpowiedzi № 1

Chciałbym użyć JPanel na JFrame. Zastępujesz metodę paintComponent JPanel, aby dopasować ją do swoich potrzeb:

@Override
public void paintComponent(Graphics g){
Graphics2D g2d = (Graphics2D) g;

g2d.setColor(Color.BLACK);
//draw rects
for(int i=0; i<n; i++){
//draw rects
g2d.drawRect(x, y, width, height);
}

//fill rects
for(int i=0; i<n i++){
//set random color for blinking effect
g2d.setColor(/*random color*/);
g2d.fillRect(x, y, width, height);
}

}

Musisz jednak samodzielnie obliczyć siatkę, używając rozmiaru swojego JPanel i rozmiaru kwadratów, które chcesz narysować. Następnie ustaw Timer i przerysuj za każdym razem, gdy chcesz uzyskać ten migający efekt.

Jeśli nie znasz java Swing i prostych operacji rysowania, powinieneś obejrzeć te same samouczki itp., Ponieważ nie zamierzam tego wszystkiego wyjaśniać;).