⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 empressappframe.java~9~

📁 八皇后问题GUI版
💻 JAVA~9~
字号:
package empress;

import java.awt.*;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.border.TitledBorder;

/**
 * <p>Title:Empresses </p>
 *
 * <p>Description:Empresses Show Software </p>
 *
 * <p>Copyright: Copyright (c) 2004</p>
 *
 * <p>Company:Bluebell </p>
 *
 * @authorJamy not attributable
 * @version 1.0
 */
public class EmpressAppFrame
    extends JFrame {
  JPanel contentPane;
  BorderLayout borderLayout1 = new BorderLayout();
  JPanel pNorth = new JPanel();
  JPanel pCenter = new JPanel();
  JPanel pEast = new JPanel();
  JPanel pSouth = new JPanel();
  GridLayout gridLayout1 = new GridLayout();
  FlowLayout flowLayout1 = new FlowLayout();
  FlowLayout flowLayout2 = new FlowLayout();
  JButton btnNext = new JButton();
  JButton btnPrev = new JButton();
  JButton btnShow = new JButton();
  JButton btnClose = new JButton();
  JButton btnBegin = new JButton();
  JButton btnQuit = new JButton();
  JLabel jLabel1 = new JLabel();
  JTextField txtNumber = new JTextField();
  JLabel jLabel2 = new JLabel();

  //*****************************
   int empressesNumber;
   JLabel jl[][];
   MapPage mcurrent,show;
   Manager mg;
   Hasilicas closeAll;
   Hasilica hcurrent,close;
  //********************************
   TitledBorder titledBorder1 = new TitledBorder("");
  TitledBorder titledBorder2 = new TitledBorder("");
  TitledBorder titledBorder3 = new TitledBorder("");
  TitledBorder titledBorder4 = new TitledBorder("");
  TitledBorder titledBorder5 = new TitledBorder("");
  TitledBorder titledBorder6 = new TitledBorder("");
  TitledBorder titledBorder7 = new TitledBorder("");
  TitledBorder titledBorder8 = new TitledBorder("");
  TitledBorder titledBorder9 = new TitledBorder("");
  TitledBorder titledBorder10 = new TitledBorder("");

  public EmpressAppFrame() {
    try {
      setDefaultCloseOperation(EXIT_ON_CLOSE);
      jbInit();
    }
    catch (Exception exception) {
      exception.printStackTrace();
    }
  }

  /**
   * Component initialization.
   *
   * @throws java.lang.Exception
   */
  private void jbInit() throws Exception {
    contentPane = (JPanel) getContentPane();
    contentPane.setLayout(borderLayout1);
    setSize(new Dimension(400, 300));
    setTitle("Frame Title");
    pEast.setLayout(gridLayout1);
    gridLayout1.setColumns(1);
    gridLayout1.setRows(4);
    pCenter.setLayout(flowLayout1);
    pSouth.setLayout(flowLayout2);
    btnNext.setForeground(Color.yellow);
    btnNext.setBorder(titledBorder4);
    btnNext.setText(" Next Map");
    btnNext.addActionListener(new EmpressAppFrame_btnNext_actionAdapter(this));
    btnPrev.setForeground(Color.yellow);
    btnPrev.setBorder(titledBorder3);
    btnPrev.setText("Prev Map");
    btnPrev.addActionListener(new EmpressAppFrame_btnPrev_actionAdapter(this));
    btnShow.setForeground(Color.red);
    btnShow.setBorder(titledBorder2);
    btnShow.setText("Show All");
    btnShow.addActionListener(new EmpressAppFrame_btnShow_actionAdapter(this));
    btnClose.setForeground(Color.blue);
    btnClose.setBorder(titledBorder1);
    btnClose.setText("Close All");
    btnClose.addActionListener(new EmpressAppFrame_btnClose_actionAdapter(this));
    btnBegin.setForeground(Color.blue);
    btnBegin.setBorder(titledBorder5);
    btnBegin.setText("   Begin   ");
    btnBegin.addActionListener(new EmpressesAppFrame_btnBegin_actionAdapter(this));
    btnQuit.setForeground(Color.blue);
    btnQuit.setBorder(titledBorder6);
    btnQuit.setText("   Quit   ");
    btnQuit.addActionListener(new EmpressAppFrame_btnQuit_actionAdapter(this));
    jLabel1.setBorder(titledBorder7);
    jLabel1.setText("Empresses Number");
    txtNumber.setBorder(titledBorder8);
    txtNumber.setPreferredSize(new Dimension(100, 22));
    txtNumber.setText("8");
    jLabel2.setForeground(Color.blue);
    jLabel2.setBorder(titledBorder9);
    jLabel2.setText("Empresses Map Show System.");
    pCenter.setBorder(titledBorder10);
    contentPane.add(pCenter, java.awt.BorderLayout.CENTER);
    contentPane.add(pEast, java.awt.BorderLayout.EAST);
    pEast.add(btnNext);
    pEast.add(btnPrev);
    pEast.add(btnShow);
    pEast.add(btnClose);
    contentPane.add(pSouth, java.awt.BorderLayout.SOUTH);
    pSouth.add(jLabel1);
    pSouth.add(txtNumber);
    pSouth.add(btnBegin);
    pSouth.add(btnQuit);
    contentPane.add(pNorth, java.awt.BorderLayout.NORTH);
    pNorth.add(jLabel2);
  }

  public void btnBegin_actionPerformed(ActionEvent e) {
    empressesNumber = Integer.parseInt(txtNumber.getText());
    pCenter.removeAll();
    closeAll = new Hasilicas(empressesNumber);
    jl =  new JLabel[empressesNumber][empressesNumber];
    pCenter.setLayout(new GridLayout(empressesNumber,empressesNumber));

                for(int i = 0; i < empressesNumber; i++)
                {
                        for(int j = 0; j < empressesNumber; j++)
                        {
                                jl[i][j] = new JLabel();
                                jl[i][j].setBorder(BorderFactory.createLineBorder(Color.blue));
                                jl[i][j].setForeground(Color.red);
                                pCenter.add(jl[i][j]);
                        }
                }
        pCenter.setVisible(true);

        mg = new Manager(empressesNumber);
        mg.arrangement();

        mcurrent = mg.mps.getHead();
        for(int i = 0; i < empressesNumber; i++)
                {
                        String s = "  " + i + "/" + mcurrent.mapPage[1][i];
                        this.jl[i][mcurrent.mapPage[1][i]].setText(s);
                        jl[i][mcurrent.mapPage[1][i]].setVerticalTextPosition(SwingConstants.CENTER);
                        jl[i][mcurrent.mapPage[1][i]].setBackground(Color.blue);
                }


  }

  public void btnQuit_actionPerformed(ActionEvent e) {
    hcurrent = closeAll.getHead();
    while(hcurrent != null)
    {
      close = hcurrent.getNext();
      hcurrent.dispose();
      hcurrent = close;
    }

    System.exit(0);
  }

  public void btnNext_actionPerformed(ActionEvent e) {
    mcurrent = mcurrent.getNext();
        if(mcurrent != null)
          {
            //pCenter.removeAll();
            for(int i = 0; i < empressesNumber; i++)
            {
              for(int j = 0; j < empressesNumber; j++)
              {
                jl[i][j].setText("");
              }
            }

            for(int i = 0; i < empressesNumber; i++)
            {
              String s = "  " + i + "/" + mcurrent.mapPage[1][i];
              this.jl[i][mcurrent.mapPage[1][i]].setText(s);
              jl[i][mcurrent.mapPage[1][i]].setVerticalTextPosition(
                  SwingConstants.CENTER);
              jl[i][mcurrent.mapPage[1][i]].setBackground(Color.blue);
            }
          }
  }

  public void btnPrev_actionPerformed(ActionEvent e) {
    mcurrent = mcurrent.getPrev();
        if(mcurrent != null)
          {
            //pCenter.removeAll();
            for(int i = 0; i < empressesNumber; i++)
            {
              for(int j = 0; j < empressesNumber; j++)
              {
                jl[i][j].setText("");
              }
            }
            for(int i = 0; i < empressesNumber; i++)
            {
              String s = "  " + i + "/" + mcurrent.mapPage[1][i];
              this.jl[i][mcurrent.mapPage[1][i]].setText(s);
              jl[i][mcurrent.mapPage[1][i]].setVerticalTextPosition(
                  SwingConstants.CENTER);
              jl[i][mcurrent.mapPage[1][i]].setBackground(Color.blue);
            }
          }
  }

  public void btnShow_actionPerformed(ActionEvent e) {
    show = mg.mps.getHead();
    while(show != null)
    {
      Hasilica has = new Hasilica(empressesNumber);
      closeAll.record(has);
      has.showMapOfEmpresses(show);
      show = show.getNext();
    }
  }

  public void btnClose_actionPerformed(ActionEvent e) {
    hcurrent = closeAll.getHead();
    while(hcurrent != null)
    {
      close = hcurrent.getNext();
      hcurrent.dispose();
      hcurrent = close;
    }
  }
}

class EmpressAppFrame_btnClose_actionAdapter
    implements ActionListener {
  private EmpressAppFrame adaptee;
  EmpressAppFrame_btnClose_actionAdapter(EmpressAppFrame adaptee) {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e) {
    adaptee.btnClose_actionPerformed(e);
  }
}

class EmpressAppFrame_btnShow_actionAdapter
    implements ActionListener {
  private EmpressAppFrame adaptee;
  EmpressAppFrame_btnShow_actionAdapter(EmpressAppFrame adaptee) {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e) {
    adaptee.btnShow_actionPerformed(e);
  }
}

class EmpressAppFrame_btnPrev_actionAdapter
    implements ActionListener {
  private EmpressAppFrame adaptee;
  EmpressAppFrame_btnPrev_actionAdapter(EmpressAppFrame adaptee) {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e) {
    adaptee.btnPrev_actionPerformed(e);
  }
}

class EmpressAppFrame_btnNext_actionAdapter
    implements ActionListener {
  private EmpressAppFrame adaptee;
  EmpressAppFrame_btnNext_actionAdapter(EmpressAppFrame adaptee) {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e) {
    adaptee.btnNext_actionPerformed(e);
  }
}

class EmpressAppFrame_btnQuit_actionAdapter
    implements ActionListener {
  private EmpressAppFrame adaptee;
  EmpressAppFrame_btnQuit_actionAdapter(EmpressAppFrame adaptee) {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e) {
    adaptee.btnQuit_actionPerformed(e);
  }
}

class EmpressesAppFrame_btnBegin_actionAdapter
    implements ActionListener {
  private EmpressAppFrame adaptee;
  EmpressesAppFrame_btnBegin_actionAdapter(EmpressAppFrame adaptee) {
    this.adaptee = adaptee;
  }

  public void actionPerformed(ActionEvent e) {
    adaptee.btnBegin_actionPerformed(e);
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -