많은 사각형 모양을 사용하여 게임 맵을 그려야합니다 (많은 픽셀이 포함 된 화면처럼). 나는 그래픽 2D과 fillRect(int x, int y, width, height)
방법을 사용하고 있습니다. 나는 10 widths
과 10 height
으로 사각형을 이렇게 작게 만듭니다.사각형의 마우스 리스너
누군가가 사각형을 클릭하면 어떻게 감지합니까? 나는 다른 질문을 읽었지 만, 마우스 수신기가 내 작은 사각형을 어떻게 감지하는지 아직도 혼란 스럽습니다.
사각형 모양의 픽셀을 만드는 대신 다른 해결책을 줄 수 있습니까? 어쩌면 단추 같은 거요?
public void paint (Graphics g){
Graphics2D g2D = (Graphics2D) g;
for (int j = 0; j<Map.WIDTH; j++){
if(j==100){
if(map[i][j]=='#'){
x=50;
y+=10;
g2D.setColor(Color.BLACK);
g2D.fillRect(x, y, 10, 10);
x+=10;
y+=0;
}
참고 : 내가 몇 가지 입력 파일에서 반복 처리 (템플릿)이기 때문에 단지
[투어]에 가서 [도움말]을 통해 [질문]을 배우고 유효한 [mcve]를 게시하십시오. 그게 당신의 시도를 보여줍니다 – Frakcool
1) 그건 [맥브] 아니에요, (다시) 링크를 읽어주십시오. 2) 당신은 JFrame을 확장하고 있기 때문에 paintComponent (...)가 아닌'paint (...) '를 오버 라이딩하는 것입니다. 3) 사용자 정의 페인팅에 대한 [튜토리얼] (https://docs.oracle.com/javase/tutorial/uiswing/painting/)을주의 깊게 읽으십시오. 4) 메소드의 첫 번째 라인으로 항상'super.paint()'(또는'tip.p {2} 다음에'super.paintComponent()'를 호출하십시오 ...) – Frakcool