在java中使用swing时出现错误消息的对话框

时间:2013-10-26 10:49:39

标签: java swing joptionpane braces

我不是一个优秀的java程序员。当我使用这种编码时,我遇到了一些错误。任何人都可以帮助我吗?

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

import javax.swing.JOptionPane;

public class test4 implements ActionListener

{

    public static void main(String[] args)throws Exception

    {

        JFrame f=new JFrame("test 4");

        JButton b=new JButton("gud morning");

        JButton b1=new JButton("yes or no");

        b.addActionListener(this);

        b1.addActionListener(this);

        Container content=f.getContentPane();

        content.add(b,BorderLayout.NORTH);

        content.add(b1,BorderLayout.SOUTH);

        f.setVisible(true);

        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        f.setSize(100,100);

        }
}

public void actionPerformed(ActionEvent e)

{

    String s=e.getActionCommand();

    if(s.equals("gud morning"))

    {

        JOptionPane.showMessageDialog(f,"gud morning","My Message");

    }

    else if(s.equals("yes or no"))

    {


        if(JOptionPane.showConfirmMessageDialog(f,"yes or no","it is also my message",JOptionPane.YES_NO_CANCEL_OPTION)==0);

        {

            JOptionPane.showMessageDialog(f,"u clicked yes button");

        }

        else

        {

            JOptionPane.showMessageDialog(f,"u clicked no button");

        }

    }

}

我收到此错误:

\ram>javac test4.java test4.java:22: error: class, interface, or enum expected public void actionPerformed(ActionEvent e) ^ test4.java:25: error: class, interface, or enum expected if(s.equals("gud morning")) ^ test4.java:28: error: class, interface, or enum expected } ^ 3 errors

1 个答案:

答案 0 :(得分:2)

if语句正在被;发送,这会导致else分支不正确。删除;

if(JOptionPane.showConfirmMessageDialog(f,"yes or no","it is also my message",JOptionPane.YES_NO_CANCEL_OPTION)==0);

变为:

if(JOptionPane.showConfirmMessageDialog(f,"yes or no","it is also my message",JOptionPane.YES_NO_CANCEL_OPTION)==0)

}开始之前,你还有一个额外的大括号actionPerformed