我目前正在使用Java制作一个定制的Minecraft Server启动器,并且我已经到了早期阶段,我真的喜欢按钮来做某事。我设法得到一个按钮来响应(开始按钮),但是一旦我输入第二个if语句使停止按钮响应,之前工作的启动按钮现在没有。我无法测试停止按钮,因为它默认是禁用的。 当我切换if语句(首先将stopBtn actionlistener放入)时,启动按钮再次起作用,但停止按钮不起作用。 请有人查看代码并提供帮助吗?
package custommcserver;
import java.awt.GridLayout;
import java.awt.event.*;
import javax.swing.*;
class Window extends JFrame implements ActionListener
{
JPanel mainPnl = new JPanel(new GridLayout(2,1));
JPanel propPnl = new JPanel();
JButton startBtn = new JButton("Start");
JButton stopBtn = new JButton("Stop");
JButton propBtn = new JButton("Properties");
public Window()
{
super("Custom Minecraft Server Launcher") ;
setSize(500,200) ;
setDefaultCloseOperation(EXIT_ON_CLOSE) ;
add(mainPnl) ;
mainPnl.add(startBtn);
mainPnl.add(stopBtn);
mainPnl.add(propBtn);
stopBtn.setEnabled(false);
startBtn.addActionListener(this);
stopBtn.addActionListener(this);
propBtn.addActionListener(this);
setVisible(true);
}
public void actionPerformed(ActionEvent event)
{
if (event.getSource() == stopBtn);
{
stopBtn.setEnabled(false);
startBtn.setEnabled(true);
}
if (event.getSource() == startBtn);
{
stopBtn.setEnabled(true);
startBtn.setEnabled(false);
}
}
}
答案 0 :(得分:6)
你在if语句之后添加了分号。带走他们:
if (event.getSource() == stopBtn)
{
stopBtn.setEnabled(false);
startBtn.setEnabled(true);
}
if (event.getSource() == startBtn)
{
stopBtn.setEnabled(true);
startBtn.setEnabled(false);
}