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

📄 frame1.java~25~

📁 自己用JAVA编的人工智能的A*算法的八数码程序
💻 JAVA~25~
字号:
package eightfigure;import java.io.*;import java.util.*;import java.awt.*;import java.awt.event.*;import javax.swing.*;import com.borland.jbcl.layout.*;/** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2004</p> * <p>Company: </p> * @author unascribed * @version 1.0 */public class Frame1 extends JFrame {  private JPanel contentPane;  private JMenuBar jMenuBar1 = new JMenuBar();  private JMenu jMenuFile = new JMenu();  private JMenuItem jMenuFileExit = new JMenuItem();  private JMenu jMenuHelp = new JMenu();  private JMenuItem jMenuHelpAbout = new JMenuItem();  private JPanel jPanel1 = new JPanel();  private JPanel jPanel2 = new JPanel();  private JPanel jPanel3 = new JPanel();  private JPanel jPanel4 = new JPanel();  private XYLayout xYLayout1 = new XYLayout();  private JLabel jLabel1 = new JLabel();  private JLabel jLabel2 = new JLabel();  private XYLayout xYLayout2 = new XYLayout();  private JButton jButton1 = new JButton();  public JTextField jText9 = new JTextField();  public JTextField jText8 = new JTextField();  public JTextField jText7 = new JTextField();  public JTextField jText6 = new JTextField();  public JTextField jText5 = new JTextField();  public JTextField jText4 = new JTextField();  public JTextField jText3 = new JTextField();  public JTextField jText2 = new JTextField();  public JTextField jText1 = new JTextField();  private GridLayout gridLayout1 = new GridLayout();  public JTextField Text9 = new JTextField();  public JTextField Text8 = new JTextField();  public JTextField Text7 = new JTextField();  public JTextField Text6 = new JTextField();  public JTextField Text5 = new JTextField();  public JTextField Text4 = new JTextField();  public JTextField Text3 = new JTextField();  public JTextField Text2 = new JTextField();  public JTextField Text1 = new JTextField();  private GridLayout gridLayout3 = new GridLayout();  private JLabel jLabel3 = new JLabel();  private JLabel jLabel4 = new JLabel();  private XYLayout xYLayout3 = new XYLayout();  private JLabel jLabel5 = new JLabel();  public int s1,s2,s3,s4,s5,s6,s7,s8,s9,d1,d2,d3,d4,d5,d6,d7,d8,d9;  //Construct the frame  public Frame1() {    enableEvents(AWTEvent.WINDOW_EVENT_MASK);    try {      jbInit();    }    catch(Exception e) {      e.printStackTrace();    }  }  //Component initialization  private void jbInit() throws Exception  {    //setIconImage(Toolkit.getDefaultToolkit().createImage(Frame1.class.getResource("[Your Icon]")));    contentPane = (JPanel) this.getContentPane();    contentPane.setLayout(xYLayout1);    this.setSize(new Dimension(402, 342));    this.setTitle("eight figure problem");    jMenuFile.setText("File");    jMenuFileExit.setText("Exit");    jMenuFileExit.addActionListener(new ActionListener()  {      public void actionPerformed(ActionEvent e) {        jMenuFileExit_actionPerformed(e);      }    });    jMenuHelp.setText("Help");    jMenuHelpAbout.setText("About");    jMenuHelpAbout.addActionListener(new ActionListener()  {      public void actionPerformed(ActionEvent e) {        jMenuHelpAbout_actionPerformed(e);      }    });    jLabel1.setHorizontalAlignment(SwingConstants.CENTER);    jLabel1.setText("目标状态");    jLabel2.setHorizontalAlignment(SwingConstants.CENTER);    jLabel2.setText("初始状态 ");    jPanel1.setLayout(xYLayout2);    jButton1.setText("搜     索");    jButton1.addActionListener(new java.awt.event.ActionListener() {      public void actionPerformed(ActionEvent e) {        jButton1_actionPerformed(e);      }    });    jText9.setText("5");    jText9.setHorizontalAlignment(SwingConstants.CENTER);    jText8.setText("6");    jText8.setHorizontalAlignment(SwingConstants.CENTER);    jText7.setText("7");    jText7.setHorizontalAlignment(SwingConstants.CENTER);    jText6.setText("4");    jText6.setHorizontalAlignment(SwingConstants.CENTER);    jText5.setText("0");    jText5.setHorizontalAlignment(SwingConstants.CENTER);    jText4.setText("1");   jText4.setHorizontalAlignment(SwingConstants.CENTER);    jText3.setText("3");    jText3.setHorizontalAlignment(SwingConstants.CENTER);    jText2.setText("8");    jText2.setHorizontalAlignment(SwingConstants.CENTER);     jText1.setText("2");    jText1.setHorizontalAlignment(SwingConstants.CENTER);    jPanel2.setLayout(gridLayout1);    gridLayout1.setColumns(3);    gridLayout1.setHgap(20);    gridLayout1.setRows(3);    gridLayout1.setVgap(20);    jPanel4.setLayout(xYLayout3);    Text9.setText("5");    Text9.setHorizontalAlignment(SwingConstants.CENTER);    Text8.setText("6");    Text8.setHorizontalAlignment(SwingConstants.CENTER);    Text7.setText("7");    Text7.setHorizontalAlignment(SwingConstants.CENTER);    Text6.setText("4");   Text6.setHorizontalAlignment(SwingConstants.CENTER);    Text5.setText("0");    Text5.setHorizontalAlignment(SwingConstants.CENTER);    Text4.setText("8");    Text4.setHorizontalAlignment(SwingConstants.CENTER);    Text3.setText("3");   Text3.setHorizontalAlignment(SwingConstants.CENTER);    Text2.setText("2");    Text2.setHorizontalAlignment(SwingConstants.CENTER);    Text1.setText("1");    Text1.setHorizontalAlignment(SwingConstants.CENTER);    jPanel3.setLayout(gridLayout3);   gridLayout3.setColumns(3);    gridLayout3.setHgap(20);    gridLayout3.setRows(3);   gridLayout3.setVgap(20);    jLabel3.setHorizontalAlignment(SwingConstants.CENTER);    jLabel3.setText("制作:王燕");    jLabel4.setText("      说明:用A*算法求解八数码问题。请在空白处填上0-8之一的数字,");    jLabel5.setText("正中间为0,其余位置不允许重复。单击搜索按钮,得到最佳路径。");    jMenuFile.add(jMenuFileExit);    jMenuHelp.add(jMenuHelpAbout);    jMenuBar1.add(jMenuFile);    jMenuBar1.add(jMenuHelp);    jPanel3.add(Text1, null);    jPanel3.add(Text2, null);    jPanel3.add(Text3, null);    jPanel3.add(Text4, null);    jPanel3.add(Text5, null);    jPanel3.add(Text6, null);    jPanel3.add(Text7, null);    jPanel3.add(Text8, null);    jPanel3.add(Text9, null);   contentPane.add(jButton1, new XYConstraints(161, 107, -1, -1));    contentPane.add(jPanel2,   new XYConstraints(16, 69, 122, 115));    jPanel2.add(jText1, null);    jPanel2.add(jText2, null);    jPanel2.add(jText3, null);    jPanel2.add(jText4, null);    jPanel2.add(jText5, null);    jPanel2.add(jText6, null);    jPanel2.add(jText7, null);    jPanel2.add(jText8, null);    jPanel2.add(jText9, null);    contentPane.add(jPanel3,  new XYConstraints(255, 72, 128, 110));    contentPane.add(jPanel1,       new XYConstraints(3, 18, 395, 49));    jPanel1.add(jLabel1,  new XYConstraints(197, 0, 197, 49));    jPanel1.add(jLabel2, new XYConstraints(31, 0, 99, 49));    contentPane.add(jPanel4,     new XYConstraints(4, 205, -1, 81));    jPanel4.add(jLabel4,  new XYConstraints(0, 32, 391, 17));    jPanel4.add(jLabel3,  new XYConstraints(0, 11, 391, 17));    jPanel4.add(jLabel5,    new XYConstraints(7, 57, 365, -1));    this.setJMenuBar(jMenuBar1);  }  //File | Exit action performed  public void jMenuFileExit_actionPerformed(ActionEvent e) {    System.exit(0);  }  //Help | About action performed  public void jMenuHelpAbout_actionPerformed(ActionEvent e) {  }  //Overridden so we can exit when window is closed  protected void processWindowEvent(WindowEvent e) {    super.processWindowEvent(e);    if (e.getID() == WindowEvent.WINDOW_CLOSING) {      jMenuFileExit_actionPerformed(null);    }  }  void jButton1_actionPerformed(ActionEvent e) {   // int[][] Source={{2,8,3},{1,0,4},{7,6,5}};   // System.out.print(s1);   // System.out.print("\n");    int s9=Integer.parseInt(jText9.getText().trim());    int s8=Integer.parseInt(jText8.getText().trim());    int s7=Integer.parseInt(jText7.getText().trim());    int s6=Integer.parseInt(jText6.getText().trim());   int s5=Integer.parseInt(jText5.getText().trim());   int s4=Integer.parseInt(jText4.getText().trim());   int s3=Integer.parseInt(jText3.getText().trim());   int s2=Integer.parseInt(jText2.getText().trim());   int s1=Integer.parseInt(jText1.getText().trim());   int d9=Integer.parseInt(Text9.getText().trim());    int d8=Integer.parseInt(Text8.getText().trim());    int d7=Integer.parseInt(Text7.getText().trim());    int d6=Integer.parseInt(Text6.getText().trim());    int d5=Integer.parseInt(Text5.getText().trim());    int d4=Integer.parseInt(Text4.getText().trim());    int d3=Integer.parseInt(Text3.getText().trim());    int d2=Integer.parseInt(Text2.getText().trim());    int d1=Integer.parseInt(Text1.getText().trim());    int[][] Source={{s1,s2,s3},{s4,s5,s6},{s7,s8,s9}};    int[][] Dest={{d1,d2,d3},{d4,d5,d6},{d7,d8,d9}};    int i,j;    for (i = 0; i < 3; i++) {      for (j = 0; j < 3; j++) {        System.out.print(Source[i][j]);      }    }    Vector finalresult=new Vector();    searchProcess searchprocess=new searchProcess();    finalresult=searchProcess.execute(Source,Dest);    Frame frame2=new Frame2(finalresult);    frame2.show(); }}

⌨️ 快捷键说明

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