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

📄 mainframe.java~124~

📁 这是java写的一个抢答器
💻 JAVA~124~
字号:
package Frame;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.net.ServerSocket;
import java.net.Socket;
import java.io.InputStream;
import java.util.Scanner;
import Frame.Bean1;


/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2007</p>
 *
 * <p>Company: </p>
 *
 * @author not attributable
 * @version 1.0
 */
public class MainFrame extends JFrame {
    BorderLayout borderLayout1 = new BorderLayout();
    //重载的构造函数
    public MainFrame(boolean mode,int userNumber) {
        try {
            jbInit(mode,userNumber);
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }
    private void jbInit(boolean mode,int userNumber) throws Exception {
      getContentPane().setLayout(borderLayout1);
      getContentPane().setLayout(null);
      setSize(this._width,this._height);
      Toolkit kit=Toolkit.getDefaultToolkit();
      Dimension dim=kit.getScreenSize();
      setLocation((dim.width/2)-(this._width/2),(dim.height/2)-(this._height/2));
      if(mode)
      {
          setTitle("抢答模式");
      }
      else
      {
          setTitle("测试模式");
      }
      this._userNumber=userNumber;
      this._mode=mode;
      //添加重新开始菜单
      JMenu menu=new JMenu("开  始");
      JMenuItem menuStart=new JMenuItem("开始抢答");
      menuStart.addActionListener(new  menuStart_actionAdapter(this));
      JMenuItem menuRestart=new JMenuItem("重新开始");
      menuRestart.setEnabled(false);
      menuRestart.addActionListener(new menuRestart_actionAdapter(this));
      menu.add(menuStart);
      menu.add(menuRestart);
      menuBar.add(menu);
      //添加模式菜单
      JMenu menuMode=new JMenu("模  式");
      JMenuItem menuLootMode=new JMenuItem("抢答模式");
      JMenuItem menuTestMode=new JMenuItem("测试模式");
      menuMode.add(menuLootMode);
      menuMode.add(menuTestMode);
      menuBar.add(menuMode);
      //添加退出菜单
      JMenu menuExit=new JMenu("退  出");
      JMenuItem menuExitItem=new JMenuItem("退出系统");
      menuExitItem.addActionListener(new menuExitItem_actionAdapter(this));
      menuExit.add(menuExitItem);
      menuBar.add(menuExit);
      //将menuBar添加到窗体
      this.setJMenuBar(menuBar);
    }
    //getUserNumber
    public int getUserNumber()
    {
        return _userNumber;
    }
  private int _width=1000;
  private int _height=500;
  private int _userNumber=0;
  private boolean _mode=false;
  private JLabel labNumber;
  private JLabel text;
  JMenuBar menuBar=new JMenuBar();
  //创建socket服务器
 ServerSocket server;
}
//退出系统菜单按钮事件
class menuExitItem_actionAdapter implements ActionListener {
    private MainFrame adaptee;
    menuExitItem_actionAdapter(MainFrame adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        System.exit(0);
    }
}
//开始抢答菜单单击事件
class menuRestart_actionAdapter implements ActionListener {
    private MainFrame adaptee;
    menuRestart_actionAdapter(MainFrame adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        //
    }
}
//重新开始菜单单击事件
class menuStart_actionAdapter implements ActionListener {
    private MainFrame adaptee;
    menuStart_actionAdapter(MainFrame adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        Runnable r=new RunServer(adaptee);
        Thread t=new Thread(r);
        t.start();
    }
}
//抢答模式菜单单击事件
class menuLootMode_actionAdapter implements ActionListener {
    private MainFrame adaptee;
    menuLootMode_actionAdapter(MainFrame adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        //抢答模式菜单动作在此添加动作
    }
}
//测试模式菜单单击事件
class menuTestMode_actionAdapter implements ActionListener {
    private MainFrame adaptee;
    menuTestMode_actionAdapter(MainFrame adaptee) {
        this.adaptee = adaptee;
    }
    public void actionPerformed(ActionEvent e) {
        //
    }
}
//创建线程
class RunServer implements Runnable
{
    public RunServer(MainFrame frame)
    {
        super();
        _frame=frame;
    }
    public void run()
    {
        try
        {
            System.out.println("服务器启动了。");
            int number=1;
            _frame.server = new ServerSocket(8189);
            while(number<=_frame.getUserNumber())
          {
              Socket socket =_frame.server.accept();
              //得到数据流
              InputStream incoming = socket.getInputStream();
              Scanner scanner = new Scanner(incoming);
              String name = scanner.nextLine();
              if (number <= _frame.getUserNumber())
              {

              }
              else
              {
                  _frame.server.close();
              }
              number++;
        }
        }catch(Exception e)
        {
            System.out.println("错误在MainFrame的Server中!");
        }
    }
    private MainFrame _frame;
}

⌨️ 快捷键说明

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