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

📄 mainframe.java

📁 JAVA写的一个机器人程序
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
package rebot;

import java.sql.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
import java.util.Date;
import java.util.GregorianCalendar.*;
import java.text.SimpleDateFormat;
import java.net.URL;
import rebot.set;
import java.io.File;

public class Mainframe extends JFrame {
    public static boolean ip;
    public static String answer = new String();
    public static String question = new String();
    public static int errnum = 0; //用户输入未知问题的次数
    public static int teachnum = 0; //教育机器人次数
    public static String teach = new String(); //教育机器人的问题
    public static String get1 = new String(); //教育机器人答案
    public static String get2 = new String(); //教育机器人答案
    public static boolean help = false; //判断是否为上一句是否为Help。是值为1,否值为0,一次判断是否提示下一步帮助

    JPanel contentPane;
    JEditorPane jTextArea1 = new JEditorPane();
    JEditorPane jTextArea2 = new JEditorPane();
    JButton bOk = new JButton();
    JScrollPane jScrollPane1 = new JScrollPane();
    JScrollPane jScrollPane2 = new JScrollPane();

    JMenuBar jMenuBar1 = new JMenuBar();
    JMenu jMenu1 = new JMenu();
    JMenu jMenu3 = new JMenu();
    JMenu jMenu4 = new JMenu();
    JMenu jMenu5 = new JMenu();
    JMenuItem jMenuItem1 = new JMenuItem();
    JMenuItem jMenuItem2 = new JMenuItem();
    JMenuItem jMenuItem3 = new JMenuItem();
    JMenuItem jMenuItem4 = new JMenuItem();
    JLabel jLabel1 = new JLabel();
    JLabel jLabel2 = new JLabel();
    JLabel jLabel4 = new JLabel("<html><a href='http://www.bryantyan.cn'><font font color='white'>http://www.bryantyan.cn</font></a></html>");

    SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss");

    Border border1 = BorderFactory.createEtchedBorder(EtchedBorder.RAISED,
            Color.white, new Color(148, 145, 140));
    Border border2 = BorderFactory.createCompoundBorder(BorderFactory.
            createBevelBorder(BevelBorder.LOWERED, Color.white, Color.white,
                              new Color(115, 114, 105), new Color(165, 163, 151)),
            BorderFactory.createEmptyBorder(2, 2, 2, 2));
    Border border3 = BorderFactory.createCompoundBorder(BorderFactory.
            createEtchedBorder(Color.pink, new Color(165, 163, 151)),
            BorderFactory.createEmptyBorder(2, 2, 2, 2));
    Border border4 = BorderFactory.createEmptyBorder();
    Border border5 = BorderFactory.createMatteBorder(6, 6, 6, 6, Color.red);
    Border border6 = BorderFactory.createMatteBorder(6, 6, 6, 6,
            new Color(255, 255, 95));
    JMenuItem jMenuItem5 = new JMenuItem();
    public Mainframe() {
        try {
            setDefaultCloseOperation(EXIT_ON_CLOSE);
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }

    }


    /**
     * Component initialization.
     *
     * @throws java.lang.Exception
     */
    private void jbInit() throws Exception {
        addWindowListener(new WindowAdapter() {

            public void windowActivated(WindowEvent e) {
                this_windowActivated(e);
            }
        });
        URL url1, url2, url3;
        url1 = getClass().getResource("/image/doraemon.gif");
        url2 = getClass().getResource("/image/jqm.png");
        url3 = getClass().getResource("/image/logo.ico");
        this.setIconImage(new ImageIcon(url3).getImage());
        this.setJMenuBar(jMenuBar1);
        this.setResizable(false);
        this.setUndecorated(true);

        contentPane = (JPanel) getContentPane();
        contentPane.setLayout(null);
        contentPane.setBackground(new Color(88, 183, 216));
        contentPane.setBorder(border6);
        jMenuItem4.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent actionEvent) {
                jMenuItem4_actionPerformed(actionEvent);
            }
        });

            setTitle("小叮当  圣诞Beta1.0");

            bOk.setToolTipText("Send!!");
            bOk.setText("发送(Alt+Enter)");

            jLabel1.setToolTipText("本人的玉照,靓吧?帅吧?羡慕吧?");
            jLabel2.setToolTipText("不好看吗?那就点一下,换一张");

            jMenu1.setText("软件设置");
            jMenu3.setText("使用帮助");

            jMenuItem1.setText("软件更新");
            jMenuItem2.setText("帮    助");
            jMenuItem3.setText("关于软件");
            jMenuItem4.setText("个性化设置");
            jMenuItem5.setText("语言设置");

            jMenu4.setText("                                                                                                                                             ");
            jMenu4.setEnabled(false);
            jMenu5.setToolTipText("离开");
            jMenu5.setText("X");

        jMenuItem5.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent actionEvent) {
                jMenuItem5_actionPerformed(actionEvent);
            }
        });
        contentPane.add(jScrollPane1);
        contentPane.add(jScrollPane2);
        contentPane.add(bOk);
        contentPane.add(jLabel2);
        contentPane.add(jLabel1);
        contentPane.add(jLabel4);
        setSize(new Dimension(580, 660));

        jTextArea1.setBorder(border3);
        jTextArea1.setInputVerifier(null);
        jTextArea1.setEditable(false);
        jTextArea2.setBorder(border3);
        jTextArea2.setCaretColor(new Color(0, 95, 216));
        jTextArea2.addFocusListener(new FocusAdapter() {
            public void focusGained(FocusEvent e) {
                jTextArea2_focusGained(e);
            }
        });
        bOk.setBackground(new Color(88, 183, 216));
        bOk.setBounds(new Rectangle(23, 488, 534, 128));
        bOk.setBorder(BorderFactory.createEmptyBorder());

        bOk.setIcon(new ImageIcon(url2));
        bOk.addMouseListener(new Mainframe_bOk_mouseAdapter(this));
        bOk.addMouseMotionListener(new Mainframe_bOk_mouseMotionAdapter(this));
        bOk.setMnemonic(KeyEvent.VK_ENTER);
        bOk.addActionListener(new Mainframe_bOk_actionAdapter(this));
        jScrollPane1.setHorizontalScrollBarPolicy(JScrollPane.
                                                  HORIZONTAL_SCROLLBAR_NEVER);
        jScrollPane1.setAutoscrolls(true);
        jScrollPane1.setBounds(new Rectangle(22, 18, 307, 319));
        jScrollPane2.setHorizontalScrollBarPolicy(JScrollPane.
                                                  HORIZONTAL_SCROLLBAR_NEVER);
        jScrollPane2.setViewportBorder(null);
        jScrollPane2.setAutoscrolls(true);
        jScrollPane2.setBounds(new Rectangle(23, 358, 305, 120));
        jLabel1.setBorder(border3);

        jLabel1.setBounds(new Rectangle(363, 21, 182, 212));
        jLabel1.addMouseListener(new MouseAdapter() {
            public void mouseExited(MouseEvent e) {
                jLabel1_mouseExited(e);
            }
        });
        jLabel1.addMouseMotionListener(new MouseMotionAdapter() {
            public void mouseMoved(MouseEvent e) {
                jLabel1_mouseMoved(e);
            }
        });

        jLabel1.setIcon(new ImageIcon(url1));
        jLabel2.setBorder(border3);

        jLabel2.setIcon(new ImageIcon(Application.image));
        jLabel2.setBounds(new Rectangle(363, 260, 182, 212));
        jLabel2.addMouseListener(new MouseAdapter() {
            public void mouseClicked(MouseEvent e) {
                jLabel2_mouseClicked(e);
            }

            public void mouseExited(MouseEvent e) {
                jLabel2_mouseExited(e);
            }
        });
        jLabel2.addMouseMotionListener(new MouseMotionAdapter() {
            public void mouseMoved(MouseEvent e) {
                jLabel2_mouseMoved(e);
            }
        });
        jLabel4.setBackground(new Color(88, 183, 216));
        jLabel4.setFont(new java.awt.Font("Comic Sans MS", Font.BOLD, 15));
        jLabel4.setForeground(Color.white);
        jLabel4.setOpaque(true);
        jLabel4.setBounds(new Rectangle(72, 337, 199, 22));
        jLabel4.addMouseListener(new MouseAdapter() {
            public void mouseClicked(MouseEvent mouseEvent) {
                jLabel4_mouseClicked(mouseEvent);
            }

            public void mouseExited(MouseEvent mouseEvent) {
                jLabel4_mouseExited(mouseEvent);
            }
        });
        jLabel4.addMouseMotionListener(new MouseMotionAdapter() {
            public void mouseMoved(MouseEvent mouseEvent) {
                jLabel4_mouseMoved(mouseEvent);
            }
        });

        jMenuItem1.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent actionEvent) {
                jMenuItem1_actionPerformed(actionEvent);
            }
        });

        jMenuItem2.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent actionEvent) {
                jMenuItem2_actionPerformed(actionEvent);
            }
        });

        jMenuItem3.getActionForKeyStroke(KeyStroke.getKeyStroke(KeyEvent.
                VK_Q,
                InputEvent.CTRL_MASK));
        jMenuItem3.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                jMenuItem3_actionPerformed(e);
            }
        });

        jMenu5.addMouseListener(new MouseAdapter() {
            public void mouseClicked(MouseEvent mouseEvent) {
                jMenu5_mouseClicked(mouseEvent);
            }
        });

        jScrollPane1.getViewport().add(jTextArea1);
        jScrollPane2.getViewport().add(jTextArea2);
        jMenuBar1.add(jMenu1);
        jMenuBar1.add(jMenu3);
        jMenuBar1.add(jMenu4);
        jMenuBar1.add(jMenu5);
        jMenu1.add(jMenuItem4);
        jMenu1.add(jMenuItem5);
        jMenu3.add(jMenuItem3);
        jMenu3.add(jMenuItem2);
        jMenu3.add(jMenuItem1);
    }

    public void bOk_actionPerformed(ActionEvent e) {
        jTextArea1.setText(Mainframe.answer + "\n" + Application.name + "    " +
                           format.format(new Date()) +
                           "\n    " +
                           jTextArea2.getText().trim());
        Mainframe.answer = jTextArea1.getText();

        if (jTextArea2.getText().trim().length() != 0) {
            String str = jTextArea2.getText().trim();
            char[] strg = str.toCharArray();
            int n = 0;
            for (int i = 0; i <= str.length() - 1; i++) {
                String a = str.valueOf(strg[i]);
                if (a.equals(".")) {
                    n++;
                    if (n == 3) {
                        Mainframe.ip = true;
                    } else {
                        Mainframe.ip = false;
                    }
                }
            }
            if (Mainframe.ip) {

                try {
                    String dbur =
                            "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=data/IP.MDB"; //此为NO-DSN方式
                    Connection con = DriverManager.getConnection(dbur);
                    PreparedStatement pss = con.prepareStatement(
                            "select IP_Provence,IP_Address from ip where ? between IP_Begin and IP_End order by IP_End DESC");
                    pss.setString(1, str);
                    ResultSet rss = pss.executeQuery();
                    if (rss.next()) {
                        if(language.lang){
                            showtalk("IP地址:" + jTextArea2.getText().trim() +
                                     "\n    地区:" +
                                     rss.getString(1) + "\n    类型:" +
                                     rss.getString(2));
                        }else{
                            showtalk("IP address:" + jTextArea2.getText().trim() +
                                     "\n    Area:" +
                                     rss.getString(1) + "\n    Type:" +
                                     rss.getString(2));

                        }
                    }
                } catch (SQLException es) {
                    es.printStackTrace();
                }
                Mainframe.ip = false;

            } else {
                if (jTextArea2.getText().trim().startsWith("1") &&
                    jTextArea2.getText().trim().length() == 11) {
                    String mobile = jTextArea2.getText().trim();
                    String number = mobile.substring(0, 7);
                    try {

⌨️ 快捷键说明

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