Kako nacrtati trokute u Javi

Java programsko sučelje sadrži naprednu mogućnost obrade grafike. Crtanje jednostavnih oblika poput trokuta je pitanje definiranja parametara oblika unutar okvira. Postavljanje ovih parametara vrši se korištenjem određenih tipova podataka i Java metoda koje upućuju kompajleru programa što učiniti kada se metode pozovu. Nadjačavanje posebne metode zvane paintComponent osigurava precizno crtanje definiranog oblika.

Korak 1

Uvezite pakete Graphics, Point i Polygon awt te JFrame i JPanel swing pakete. Kod ide prije prve klase vašeg programa i izgleda ovako:

Video dana

uvoz java.awt. Grafika; uvoz java.awt. Točka; uvoz java.awt. Poligon; import javax.swing. JFrame; import javax.swing. JPanel;

Korak 2

Napravite svoju klasu trokuta i proširite klasu JPanel tako da se trokut može prikazati na ekranu. Vaš bi kod trebao izgledati ovako, iako svom programu možete imenovati kako god želite:

javna klasa TriangleShape proširuje JPanel {

}

Korak 3

Nadjačajte metodu paintComponent u svojoj glavnoj klasi. Upute koje Java koristi za crtanje trokuta nalaze se u ovoj metodi. Kôd izgleda ovako, iako tipovima podataka možete imenovati kako god želite:

public void paintComponent (Grafika g) { super.paintComponent (g);

Dužina dimenzije = this.getSize(); Točka p1 = nova točka (veličina.širina / 3, (2 * veličina.visina) / 3); Točka p2 = nova točka (veličina.širina / 2, veličina.visina / 3); Točka p3 = nova točka((2 * veličina.širina) / 3, (2 * veličina.visina) / 3); int[] x = { p1.x, p2.x, p3.x }; int[] y = { p1.y, p2.y, p3.y }; Poligon trokut = novi Poligon (x, y, x.dužina);

Točke p1, p2 i p3 definiraju vrhove trokuta. Int[] nizovi i trokut tipa Poligon čine noge trokuta. Ovaj kod se nalazi unutar zagrada vaše glavne klase.

4. korak

Stvorite glavnu metodu, koja upućuje Javu da stvori okvir na kojem će nacrtati trokut i dodaje trokut okviru. Kôd je sljedeći, koristeći vaša imena za vrste podataka:

public static void main (String[] args) {

Oblik trokuta t = novi oblik trokuta(); Okvir JFrame = novi JFrame(); frame.getContentPane().dodaj (t); frame.setDefaultCloseOperation (JFrame. EXIT_ON_CLOSE); frame.setSize (100, 100); frame.show();

Ovaj kod se nalazi u zagradama vaše glavne klase, nakon metode printComponent.