저는 자바에 대해 아주 익숙하며, 제가하려고하는 것을 달성하기 위해 사용할 수있는 방법을 알지 못합니다. 전등 스위치를 시뮬레이트하는 프로그램을 만들어야합니다. 조명을 켜고 끄는 버튼 하나. 이벤트가 시작되기 전에 배경색을 진회색으로 설정하고 시작된 후 배경색이 노란색으로 설정됩니다. 내가 가지고있는 문제는 배경이 노란색 일 때 어떻게 같은 버튼을 사용하여 어두운 회색으로 다시 바꿀 수 있습니까?하나의 JButton에 두 가지 다른 액션을 부여하십시오.
내 코드 :
import javax.swing.JApplet;
import javax.swing.JButton;
import java.awt.Color;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Question2 extends JApplet implements ActionListener {
public void init() {
Container contentPane = getContentPane();
contentPane.setBackground(Color.DARK_GRAY);
contentPane.setLayout(new FlowLayout());
JButton OnOffSwitch = new JButton("On/Off");
contentPane.add(OnOffSwitch);
OnOffSwitch.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
Container contentPane = getContentPane();
if (e.getActionCommand().equals("On/Off"))
contentPane.setBackground(Color.YELLOW);
else
contentPane.setBackground(Color.DARK_GRAY);
}
}
*
"오프에 빛을 켜고 하나 개의 버튼을 클릭합니다."*이에 대한'JToggleButton' 또는'JCheckBox'를 사용합니다. –*'JApplet' * 애플릿을 코딩하는 이유는 무엇입니까? 사양으로 인해 예정된 경우. 선생님이 [왜 CS 교사가 Java 애플릿 교육을 중단해야하는지] (http://programmers.blogoverflow.com/2013/05/why-cs-teachers-should-stop-teaching-java-applets/)를 참조하십시오. –
부울은가는 길입니다 (@andrew가 제안한 것을 따르는 것이 더 낫습니다). 실제로 여러분은 올바른 길을 가고있었습니다. 'On/Off'라는 레이블을 사용하는 대신'Turn On'으로 레이블을 초기화 할 수 있었고'TurnPan'과 같은 것으로 발견되면'actionPerformed'에서 레이블을 노란색으로 변경하고 새 레이블은 '꺼짐'으로 표시됩니다. 그것을 사용하지 않는 것이 좋습니다, 이것은 단지 당신의 지식을 위해서였습니다 :) – Nikhil