2
자바 그래픽을 배우고 있습니다. 나는 단순한 인물을 그리려하고있다.fillPolygon()으로 사각형을 그릴 수없는 이유
public class Draw extends JPanel {
public void paintComponent(Graphics g) {
super.paintComponent(g);
int[] xpoints = new int[] { 20, 50, 80 };
int[] ypoints = new int[] { 40, 10, 40 };
g.fillPolygon(xpoints, ypoints, 3);
int[] recXp = new int[] { 20, 80, 20, 80 };
int[] recYp = new int[] { 50, 60, 50, 60 };
g.fillPolygon(recXp, recYp, 4);
}
public static void main(String[] args) {
JFrame frame = new JFrame();
Draw panel = new Draw();
frame.add(panel);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(800, 600);
}
}
을 내가
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Draw extends JPanel {
public void paintComponent(Graphics g) {
super.paintComponent(g);
int[] xpoints = new int[] { 20, 50, 80 };
int[] ypoints = new int[] { 40, 10, 40 };
g.fillPolygon(xpoints, ypoints, 3);
g.fillRect(20, 50, 60, 10);
}
public static void main(String[] args) {
JFrame frame = new JFrame();
Draw panel = new Draw();
frame.add(panel);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(800, 600);
}
}
가 왜 이런 일이 일어나고 사용할 필요가 원하는 것을 달성하기 위해 : 그러나 나는 다음과 같은 코드가 제대로 그려지지 않습니다 것으로 나타났습니다? 내가 놓친 게 있니? 죄송합니다. 이것이 사소한 질문이라면, 저는 Java를 더 잘 이해하려고 노력하고 있습니다.
t [] recXp = 새로운 int [] {20, 80, 80, 20}; \t \t int [] recYp = 새로운 int [] {50, 50, 60, 60}; 및 제대로 표시, 바보 같은 질문에 대한 미안 해요 :) – Moe
배우고 싶다면 어리석은 질문이 있습니다. – c0der
@moe, c0der에 동의합니다. 때로는 메서드 사용이 우리를 혼란스럽게합니다. 당신은 시도한 것을 보여주는 방법을 테스트하기 위해 멋진 간단한 [mcve]를 만들었습니다. 우리는 귀하가 이러한 노력을 할 때 도움을 기쁘게 생각합니다. – camickr