首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建gui程序导致main方法出错

创建gui程序导致main方法出错
EN

Stack Overflow用户
提问于 2013-09-23 21:07:09
回答 1查看 80关注 0票数 0
代码语言:javascript
复制
public class Main extends JFrame {
    private JButton classA[] = new JButton[12];
    private JButton classB[] = new JButton[12];
    private JLabel emptylbls[] = new JLabel[11];
    private boolean seatA_avail[] = new boolean[12];
    private boolean seatB_avail[] = new boolean[12];

    public Main() {
        btnHandler handler = new btnHandler();

        for (int i=0; i<classA.length; i++) {
            classA[i] = new JButton("A-" + (i+1));
            classA[i].addActionListener(handler);
        }

        for (int i=0; i<classB.length; i++) {
            classB[i] = new JButton("B-" + (i+1));
            classB[i].addActionListener(handler);
        }

        for (int i=0; i<emptylbls.length; i++) {
            emptylbls[i] = new JLabel("");
        }

        Container pane = getContentPane();
        pane.setLayout(new GridLayout(7,5));    
        pane.add(classA[0]);
        pane.add(classA[1]);
        pane.add(emptylbls[0]);
        pane.add(classA[2]);
        pane.add(classA[3]);
        pane.add(classA[4]);
        pane.add(classA[5]);
        pane.add(emptylbls[1]);
        pane.add(classA[6]);
        pane.add(classA[7]);
        pane.add(classA[8]);
        pane.add(classA[9]);
        pane.add(emptylbls[2]);
        pane.add(classA[10]);
        pane.add(classA[11]);
        pane.add(emptylbls[3]);
        pane.add(emptylbls[4]);
        pane.add(emptylbls[5]);
        pane.add(emptylbls[6]);
        pane.add(emptylbls[7]);

        pane.add(classB[0]);
        pane.add(classB[1]);
        pane.add(emptylbls[8]);
        pane.add(classB[2]);
        pane.add(classB[3]);
        pane.add(classB[4]);
        pane.add(classB[5]);
        pane.add(emptylbls[9]);
        pane.add(classB[6]);
        pane.add(classB[7]);
        pane.add(classB[8]);
        pane.add(classB[9]);
        pane.add(emptylbls[10]);
        pane.add(classB[10]);
        pane.add(classB[11]);


        setTitle("Airline Reservation System");
        setVisible(true);
        setSize(500,600);
        setResizable(true);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setLocationRelativeTo(null); 
    }

private class btnHandler implements ActionListener {
        String names_classA[] = new String[12];
        String contacts_classA[] = new String[12];
        String names_classB[] = new String[12];
        String contacts_classB[] = new String[12];
        public void actionPerformed(ActionEvent e) {
            JButton currentBut = (JButton) e.getSource();
            for (int i=0;i<classA.length;i++){
                if (classA[i].equals(currentBut) && seatA_avail[i] == false) {
                    names_classA[i] = JOptionPane.showInputDialog("Enter customer's name:");
                    contacts_classA[i] = JOptionPane.showInputDialog("Enter customer's contact no.:");
                    currentBut.setText("<html><p align=center>(Reserved)<br></br>" + currentBut.getText() + "</p></html>");
                    seatA_avail[i] = true;
                }
                else if (classA[i].equals(currentBut) && seatA_avail[i] == true) {
                    JOptionPane.showMessageDialog(null,"This seat is reserved to:\n" +
                                                       "Name: " + names_classA[i] +
                                                       "\nContact No: " + contacts_classA[i]);
                }
                else if (classB[i].equals(currentBut) && seatB_avail[i] == false) {
                    names_classB[i] = JOptionPane.showInputDialog("Enter customer's name:");
                    contacts_classB[i] = JOptionPane.showInputDialog("Enter customer's contact no.:");
                    currentBut.setText("<html><p align=ceNter>(Reserved)<br></br>" + currentBut.getText() + "</p></html>");
                    seatB_avail[i] = true;
                }
                else if (classB[i].equals(currentBut) && seatB_avail[i] == true) {
                    JOptionPane.showMessageDialog(null,"This seat is reserved to:\n" +
                               "Name: " + names_classB[i] +
                               "\nContact No: " + contacts_classB[i]);
                }

            }

        }
    } 

    public static void main(String[] args) {
        Main obj = new Main();
    }

}

我的代码没有运行,eclipse告诉我创建gui程序的main方法出了问题。我不知道我的代码出了什么问题,但它也告诉我没有使用obj变量。这是我的完整代码。

提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2013-09-23 21:15:27

我刚刚运行了你的程序,没有任何问题。也许你没有正确导入。确保在主类的顶部有以下内容。

代码语言:javascript
复制
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;

public class Main extends JFrame {
    ....
    ....
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18960067

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档