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

📄 ftpservescreen.java

📁 基于swing的java模拟的c/s服务模式
💻 JAVA
字号:
package service;

import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.PrintWriter;
import java.net.Socket;
import java.util.Vector;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JToolBar;
import javax.swing.table.DefaultTableModel;

public class FtpServeScreen extends JFrame implements ActionListener {
	private static final long serialVersionUID = 1L;

	private JFrame f = null;

	private JMenuItem StartItem;

	private JMenuItem CloseItem;

	private JButton StartButton;

	private JButton CloseButton;

	private JTable table;

	private DefaultTableModel model;

	public Socket clients = null;

	BufferedReader in = null;

	PrintWriter out = null;

	public FtpServeScreen(String user) {
		f = new JFrame("SERVE管理程序" + user);
		init();
	}

	// 初始化
	public void init() {
		f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		f.getContentPane().setLayout(new BorderLayout());
		f.setLocation(150, 50);
		f.setSize(800, 650);
		f.setJMenuBar(getmenuBar());
		f.getContentPane().add(getToolBar(), BorderLayout.NORTH);
		f.getContentPane().add(getPane(), BorderLayout.CENTER);
		f.setVisible(true);
		// startServe();
	}

	public JMenuBar getmenuBar() {
		JMenuBar menubar = new JMenuBar();
		menubar.add(getSystemMenu());
		menubar.add(getEditMenu());
		menubar.add(getHelpMenu());
		return menubar;
	}

	// 系统目录
	public JMenu getSystemMenu() {
		JMenu systemmenu;// 系统目录
		JMenuItem existitem;
		systemmenu = new JMenu("文件(F)");
		systemmenu.setMnemonic('F');
		existitem = new JMenuItem("退出(E)", 'E');
		systemmenu.add(existitem);
		existitem.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				f.dispose();
				System.exit(0);
			}
		});
		return systemmenu;
	}

	// 菜单编辑目录
	public JMenu getEditMenu() {
		JMenu editMenu = new JMenu("编辑(E)");
		editMenu.setMnemonic('E');
		StartItem = new JMenuItem("启动服务器(S)", 'S');
		CloseItem = new JMenuItem("关闭服务器(C)", 'C');
		StartItem.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent evt) {
				startServe();
			}
		});

		CloseItem.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent evt) {

			}
		});
		editMenu.add(StartItem);
		editMenu.add(CloseItem);
		return editMenu;
	}

	// 帮助目录
	public JMenu getHelpMenu() {
		JMenu help = new JMenu("帮助(H)");
		help.setMnemonic('H');
		JMenuItem h = new JMenuItem("帮助(H)", 'H');
		help.add(h);
		return help;
	}

	// 工具栏
	public JToolBar getToolBar() {
		JToolBar toolBar = new JToolBar();

		StartButton = new JButton("启动服务器", new ImageIcon(getClass()
				.getResource("image/add.gif")));

		CloseButton = new JButton("关闭服务器", new ImageIcon(getClass()
				.getResource("image/change.gif")));

		StartButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent evt) {
				startServe();
			}
		});

		CloseButton.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent evt) {

			}
		});
		toolBar.add(StartButton);
		toolBar.add(CloseButton);
		return toolBar;
	}

	public JScrollPane getPane() {
		model = new DefaultTableModel();
		table = new JTable(model);
		JScrollPane scrollpane = new JScrollPane();
		model.addColumn("客户端连接情况");
		scrollpane.getViewport().add(table, this);
		return scrollpane;
	}

	public void showResult(Vector v) {
		for (int i = 0; i < v.size(); i++) {
			Vector list = new Vector();
			list.add(v.elementAt(i));
			model.addRow(list);
		}
	}

	public void startServe() {
		Vector li = new Vector();
		li.add("服务器端启动");
		li.add("Ftpserver starting up on port 21");
		li.add("Waiting for connection");
		showResult(li);
		Thread my = new mythread();
		my.start();
	}

	public void actionPerformed(ActionEvent arg0) {
		Object o = arg0.getSource();
		if (o.equals(JFrame.EXIT_ON_CLOSE)) {
		}
	}

	public static void main(String args[]) {
		new FtpServeScreen("lieping");
	}

	class mythread extends Thread {
		public void run() {
			new FtpService().startServe();
		}
	}
}

⌨️ 快捷键说明

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