0
이벤트를 설정할 때 Mouse_Clicked
메인 메뉴로 돌아 가야하지만 마우스를 클릭해도 아무런 반응이 없습니다. 메인 메뉴 인 MENUSTATE
으로 가고 싶지만 아무 일도 일어나지 않습니다. 이 프로젝트는 학교 프로젝트이므로 도움이 필요하며 무엇이 잘못되었는지는 알 수 없습니다.Java GameState가 변경되지 않습니다.
package GameState;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.event.MouseEvent;
import main.GamePanel;
public class HelpState extends GameState {
private Color titleColor;
private Font titleFont;
public HelpState(GameStateManager gameStateManager) {
init();
}
@Override
public void init() { }
@Override
public void update() {
// TODO Auto-generated method stub
}
@Override
public void draw(Graphics2D g) {
g.setColor(titleColor);
g.setFont(titleFont);
g.clearRect(1, 1, GamePanel.WIDTH, GamePanel.HEIGHT);
g.drawString("Move Left: Left Arrow ", 0, 25);
g.drawString("Move Right: Right Arrow ", 0, 45);
g.drawString("Attack: A Button ", 0, 65);
g.drawString("Become Other Wumps: You must have things happened to", 0, 85);
g.drawString("you (Eg. Get smashed by a wall). After that you must press ", 0, 95);
g.drawString("the corresponding No. Key.", 0, 105);
}
private void select() {
gsm.setState(GameStateManager.MENUSTATE);
}
public void mousePressed(int m) {
if (m == MouseEvent.MOUSE_CLICKED) {
select();
}
}
@Override
public void keyReleased(int k) {
// TODO Auto-generated method stub
}
@Override
public void keyPressed(int k) {
// TODO Auto-generated method stub
}
}
프로그램도의 mousePressed (INT 분)에 들어가 있습니까 {}? –
@Override를 mousePressed (int m) {} 메소드에 추가해보십시오. 어떻게되는지보십시오. – Victor2748
'g.clearRect (1, 1, GamePanel.WIDTH, GamePanel.HEIGHT);'잘못된 생각입니다. 너비와 높이가 실제로 생각하는 것과 다를 수 있습니다. 또한 자바는 일반적으로 인덱스가 0입니다. 아마도'0x0'에서 시작해야합니다. 문제를 나타내는 [실행 가능한 예제] (https://stackoverflow.com/help/mcve)를 제공하십시오. 이렇게하면 혼란이 줄어들고 응답이 향상됩니다. – MadProgrammer