클래스를 작성했습니다.이 질문에 대해이 DrawCard를 호출하여 데크 클래스에서 임의로 그린 카드를 표시합니다. 나는 게임 카드, 슈트, 밸류, 컬러 등과 관련된 정보를 담고있는 그래픽 객체를 작성했다. 메인 메소드에서 객체를 초기화하고 JFrame에 추가하면 모든 것을 100 % 올바르게 표시하고 그려 준다. 그런 다음 액션 리스너가 새 DrawCard 객체를 만들고, 프레임에서 첫 번째를 제거하고 새 프레임을 프레임에 추가하는 버튼이있는 툴바를 추가했습니다. 프로그램은 컴파일되고 실행되지만 버튼을 클릭하면 프레임에 새 카드가 그려지지 않습니다. 첫 번째 프레임을 제거하지만 프레임에 새 프레임을 추가하지 않습니다. 단, 다시 페인트 메서드를 호출하더라도 마찬가지입니다. 나는 주요 방법 주위 행운 내 ActionListener를 내부에 몇 가지 다른 장소에서 내 JFrame의에 다시 그리기 메소드를 호출 시도Java 그래픽 객체가 업데이트되지 않습니까?
JFrame frame = new JFrame("Paying Card");
JButton button = new JButton("Button 1");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
int width = 330;
int height = 500;
frame.setSize(width, height);
DrawPlayingCard drawCard = new DrawPlayingCard(1, 1,width,height,1, frame);
JToolBar toolBar = new JToolBar("This Tool Bar Does Nothing.");
toolBar.add(button);
toolBar.addSeparator();
Container contentPane = frame.getContentPane();
contentPane.add(toolBar, BorderLayout.NORTH);
frame.add(drawCard);
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e)
{
//Execute when button is pressed
frame.remove(drawCard);
frame.repaint();
//method signature:
//public DrawPlayingCard(int x, int y, int width, int height, int arcSize, JFrame frame);
DrawPlayingCard drawCard2 = new DrawPlayingCard(1, 1, width, height, 1, frame);
System.out.println("Card drawn");
frame.add(drawCard2);
}
});
frame.setLocationRelativeTo(null);
frame.setVisible(true);
: 여기
내가 내 주요 방법에있는 코드입니다. 나는 또한 다른 주문에 내 물건을 추가하려고했지만 아무것도 작동하지 않는 것 같습니다. 어떤 도움이라도 대단히 감사하겠습니다!
게시물 [mcve] .. – user1803551
나는 과거에 쓰여진 모든 수업을 제공했고, 나는 내 질문에 너무 많은 코드를 제공 한 것으로 나타났습니다. 대리인이 여기에 세우지 않기 때문에 투표를하지 않고 대표를 잃지 않고 어떻게이를 수행 할 수 있습니까? –