资源简介
Java实现远程控制程序。

代码片段和文件信息
package com.lxl.controller;
import java.awt.Dimension;
import java.awt.DisplayMode;
import java.awt.GraphicsDevice;
import java.awt.GraphicsEnvironment;
import java.awt.Toolkit;
import java.awt.event.InputEvent;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseWheelEvent;
import java.io.IOException;
import java.io.objectInputStream;
import java.io.objectOutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import javax.swing.ImageIcon;
import javax.swing.Jframe;
import javax.swing.JLabel;
import javax.swing.JScrollBar;
/**
* 远程控制
*
* 界面接收端线程方法
*
* 任务:1、接受界面;1、发送鼠标,键盘事件
*
* @author lxl
*
*/
public class Receiver implements Runnable {
static Socket socket = null;
// 获取屏幕尺寸
static Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
// 界面显示(显示传送过来的界面图片)
static JLabel label = new JLabel();
static Jframe controllerUI = new Jframe();
static {
controllerUI.setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);
controllerUI.setSize(d.getSize());
label.setSize(d.getSize());
controllerUI.add(label);
controllerUI.setVisible(true);
}
@Override
public void run() {
/**
* 界面接收
*/
new Thread(new Runnable() {
@Override
public void run() {
try {
System.out.println(“UI界面接收服务器启动“);
ServerSocket receive = new ServerSocket(9999);
ImageIcon img = null;
objectInputStream ois = null;
while (true) {
socket = receive.accept();
ois = new objectInputStream(socket.getInputStream());
img = (ImageIcon) ois.readobject();
label.setSize(new Dimension(img.getIconWidth() img.getIconHeight()));
label.setIcon(img);
}
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
}).start();
/**
* 鼠标键盘事件
*
* 发送
*/
new Thread(new Runnable() {
private void sendAction(InputEvent e) {
if (socket != null) {
new Thread(new Runnable() {
@Override
public void run() {
objectOutputStream oos = null;
Socket order = null;
try {
order = new Socket(“192.168.31.135“ 8888);
oos = new objectOutputStream(order.getOutputStream());
// 创建鼠标事件
oos.writeobject(e);
oos.flush();
} catch (IOException e1) {
e1.printStackTrace();
} finally {
if (oos != null) {
try {
oos.close();
} catch (IOException e1) {
e1.printStackTrace();
}
}
}
}
}).start();
}
}
@Override
public void run() {
controllerUI.addKeyListener(new KeyAdapter() {
@Override
public void keyReleased(KeyEvent e) {
sendAction(e);
}
@Ove
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-04-02 15:13 RemoteControl\
文件 301 2019-03-21 16:10 RemoteControl\.classpath
文件 389 2019-03-21 16:10 RemoteControl\.project
目录 0 2019-04-02 15:13 RemoteControl\.settings\
文件 57 2019-03-25 11:23 RemoteControl\.settings\org.eclipse.core.resources.prefs
文件 598 2019-03-21 16:10 RemoteControl\.settings\org.eclipse.jdt.core.prefs
目录 0 2019-04-02 15:13 RemoteControl\bin\
目录 0 2019-04-02 15:13 RemoteControl\bin\com\
目录 0 2019-04-02 15:13 RemoteControl\bin\com\lxl\
目录 0 2019-04-02 15:13 RemoteControl\bin\com\lxl\controller\
文件 1876 2019-04-02 14:21 RemoteControl\bin\com\lxl\controller\Receiver$1.class
文件 1584 2019-04-02 14:21 RemoteControl\bin\com\lxl\controller\Receiver$2$1.class
文件 855 2019-04-02 14:21 RemoteControl\bin\com\lxl\controller\Receiver$2$2.class
文件 785 2019-04-02 14:21 RemoteControl\bin\com\lxl\controller\Receiver$2$3.class
文件 864 2019-04-02 14:21 RemoteControl\bin\com\lxl\controller\Receiver$2$4.class
文件 1055 2019-04-02 14:21 RemoteControl\bin\com\lxl\controller\Receiver$2$5.class
文件 1825 2019-04-02 14:21 RemoteControl\bin\com\lxl\controller\Receiver$2.class
文件 1593 2019-04-02 14:21 RemoteControl\bin\com\lxl\controller\Receiver.class
文件 1872 2019-04-02 14:56 RemoteControl\bin\com\lxl\controller\Sender$1.class
文件 2725 2019-04-02 14:56 RemoteControl\bin\com\lxl\controller\Sender$2.class
文件 795 2019-04-02 14:56 RemoteControl\bin\com\lxl\controller\Sender.class
目录 0 2019-04-02 15:13 RemoteControl\src\
目录 0 2019-04-02 15:13 RemoteControl\src\com\
目录 0 2019-04-02 15:13 RemoteControl\src\com\lxl\
目录 0 2019-04-02 15:13 RemoteControl\src\com\lxl\controller\
文件 4218 2019-04-02 14:21 RemoteControl\src\com\lxl\controller\Receiver.java
文件 4774 2019-04-02 14:56 RemoteControl\src\com\lxl\controller\Sender.java
相关资源
- 微博系统(Java源码,servlet+jsp),适
- java串口通信全套完整代码-导入eclip
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
- java做的房产管理系统
- 基于jsp的bbs论坛 非常详细
评论
共有 条评论