저는 학교 프로젝트로 Minesweeper를 만들고 있습니다. 필드/버튼을 클릭하면 비활성 상태가되고 인접 항목 수에 따라 다른 색상의 이웃을 표시합니다. Eclipse에서이 작업을하고있다. 그것은 완벽하게 작동하며 거의 제출할 준비가되었습니다. 유일한 문제는 이클립스와 JCreator에서 실행될 때 색상이 작동하지만, .bat
/명령 (java Minesweeper
)으로 실행하면 색상이 회색으로 표시됩니다.JButton을 사용할 수 없으면 텍스트가 회색으로 표시됩니다.
setText()
을 호출하면 색상이 html 태그로 변경됩니다. 예 : setText("<html><font color=red>3</font></html>")
등
왜 이런 일이 발생합니까? ... 그것은 나를 위해 작동하지 않습니다
컴파일 및 이클립스/JCreator이 실행 : 색상은 이클립스/JCreator에서 잘 작동하지만 내가 cmd
를 통해 게임이나 배치 스크립트
을 실행할 때이 시도 . 그런 다음 이클립스/JCreator에서 실행하면 빨간색이 될 것입니다 java Test
텍스트를 사용하여 실행 시도하고 스크립트에서 실행할 때 회색
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
class Test {
public static void main(String[] args) {
JFrame mainFrame = new JFrame("Test");
JButton testButton = new JButton("Click this");
MouseAdapter buttonListener = new MouseAdapter() {
public void mouseReleased(MouseEvent e) {
int modifier = e.getModifiers();
JButton clicked = (JButton)e.getSource();
clicked.setForeground(Color.RED);
clicked.setText("<html><font color=red>" + clicked.getText() + "</font></html>");
clicked.setEnabled(false);
}
};
mainFrame.setMinimumSize(new Dimension(640,480));
mainFrame.getContentPane().add(testButton);
testButton.addMouseListener(buttonListener);
mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
mainFrame.setVisible(true);
}
}
자급 자족하고 실행 가능한 코드 예제를 게시하면 도움이 될 것입니다. 사용자가 컴파일하고 실행할 수있는 것입니다. – Paul
있습니다. 내 지뢰 찾기 코드와 유사한 코드를 추가하고 내 문제를 복제합니다. – Alex
Eclipse (Helios)와 명령 줄'java Test' (java_1.6.0)에서 동일한 동작을 봅니다. 아마도 당신은 Eclipse와 명령 행을 위해 정의 된 다른 기본 jvm을 가지고있을 것입니다. – crowne