package course;
import java.awt.Button;
import java.awt.GridLayout;
import java.awt.Label;
import java.awt.Panel;
import java.awt.TextField;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
import javax.swing.JFrame;
import javax.xml.soap.Text;
public class C {
private static String stu_information = "无"; //学生信息
private static TextField test = new TextField("",10);//校验结果最终显示的地方
public static void main(String[] args) {
//客户端线程
new Thread () {
@Override
public void run() {
try {
String s = "无"; //发送字符串
byte[] b = new byte[1024];
String bs = "无";//校验结果
Socket socket = new Socket("127.0.0.1", 6667);
OutputStream os = socket.getOutputStream();
InputStream is = socket.getInputStream();
int len = 0;
//如果学生信息改变
while (true) {
try {
//发送消息
Thread.sleep(1000); //没有sleep(),则无法进行if语句的判断?
if (!stu_information.equals(s)) { //这里为什么要改为static才行
s = stu_information;
b = s.getBytes();
os.write(b);
System.out.println("已经发送");
//接收消息
len = is.read(b);
bs = new String(b,0,len);
test.setText(bs);
System.out.println("已经接收" + bs);
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}.start();
//--------------------------------------------------------------------------------------------------------------//
//界面线程
new Thread() {
private JFrame jframe = new JFrame("test");
private Button sure = new Button("确认注册");
private Label id = new Label("学号",Label.CENTER);
private Label clazz = new Label("班级",Label.CENTER);
private Label name = new Label("姓名",Label.CENTER);
private Label age = new Label("年龄",Label.CENTER);
private Label pass = new Label("密码",Label.CENTER);
private TextField idtext = new TextField("",1);
private TextField clazztext = new TextField("",1);
private TextField nametext = new TextField("",1);
private TextField agetext = new TextField("",1);
private TextField passtext = new TextField("",1);
@Override
public void run() {
init();
panel();
listener();
}
private void listener() {
sure.addMouseListener(new MouseAdapter() {
@Override
public void mouseReleased(MouseEvent e) { //把学生信息放在stu_information里面
//想要在这里使用stu_information需要设置成static,为什么
stu_information = idtext.getText() + "," + clazztext.getText() + "," + nametext.getText() + "," + agetext.getText() + "," + passtext.getText();
}
});
}
private void panel() {
Panel panel = new Panel();
Panel panel2 = new Panel();
Panel panel3 = new Panel();
panel.setLayout(new GridLayout(5, 2));
panel.add(id);
panel.add(idtext);
panel.add(clazz);
panel.add(clazztext);
panel.add(name);
panel.add(nametext);
panel.add(age);
panel.add(agetext);
panel.add(pass);
panel.add(passtext);
panel2.add(sure);
panel3.add(test);
jframe.add(panel);
jframe.add(panel2);
jframe.add(panel3);
}
private void init() {
jframe.setLayout(new GridLayout(3, 1));
jframe.setLocation(500, 50);
jframe.setSize(300, 280);
jframe.setVisible(true);
}
}.start();
}
}
带有应答的远端信息注册系统设计
5星 · 超过95%的资源 需积分: 0 175 浏览量
2018-08-08
21:22:34
上传
评论 9
收藏 11KB RAR 举报
5120154125hang
- 粉丝: 5
- 资源: 4
最新资源
- U8Cloud常见开发的示例
- AT32与Sxx32/Gx32替换对照表
- STM32VET6单片机+XC3S250E(FPGA)+AD9708 DDS信号发生器MCU+FPGA源码+PDF硬件设计原理图
- SCIPOptSuite-9.0.0-win64-VS15.exe
- GIS10.4补丁文件
- fdgsfdgfdsgsf
- 基于CodeMirror5实现的mybatis+sql提示扩展功能,主要是用于在线设计开发场景中的动态sql部分.zip
- 计算机毕业设计-aSP.NET某中学学生成绩管理系统的设计(源代码+)-毕设源码实例.zip
- springboot集成mybatis动态sql.zip
- mybatis中的动态sql, 涉及 where trim set if foreach等
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈