java 叉号关闭_求助 java 如何编写JFrame窗体右上角红色打叉关闭按钮的事件?
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class Client {
JTextArea jta;
JTextField jtf;
BufferedReader in;
PrintWriter out;
private void initGUI(){
JFrame f = new JFrame("Client");
f.setSize(400,300);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jta = new JTextArea();
jta.setEditable(false);
f.add(new JScrollPane(jta));
jtf = new JTextField();
f.add(jtf,"South");
f.setVisible(true);
jtf.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String text = jtf.getText();
jtf.setText("");
out.println(text);
out.flush();
}
});
}
private void initNet(){
try{
Socket s = new Socket("127.0.0.1",8186);
out = new PrintWriter(s.getOutputStream());
in = new BufferedReader(new InputStreamReader(s.getInputStream()));
}catch(Exception e){
e.printStackTrace();
}
}
private void receive(){
try{
while(true){
String str = in.readLine();
if(str==null){
return;
}
jta.append("˵"+str+"\n");
}
}catch(Exception e){
e.printStackTrace();
}
}
private Client(){
this.initGUI();
this.initNet();
}
public static void main(String[] args) {
Client c = new Client();
c.receive();
}
}
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.ArrayList;
import java.util.List;
public class Server {
public static void main(String[] args) {
try{
ServerSocket ss = new ServerSocket(8186);
List sockets = new ArrayList();
while(true){
Socket s = ss.accept();
sockets.add(s);
Thread t1 = new ChatThread(s,sockets);
t1.start();
}
}catch(IOException e){
e.printStackTrace();
}
}
}
class ChatThread extends Thread{
Socket s;
List sockets;
public ChatThread(Socket s,List sockets){
this.s = s;
this.sockets = sockets;
}
public void run(){
try{
BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream()));
while(true){
String str = in.readLine();
for(int i=0;i
Socket s2 = (Socket)sockets.get(i);
PrintWriter out = new PrintWriter(s2.getOutputStream());
out.println(str);
out.flush();
}
}
}catch (Exception e) {}
finally{
try{
s.close();
}catch (Exception e) {}
}
}
}
java 叉号关闭_求助 java 如何编写JFrame窗体右上角红色打叉关闭按钮的事件?相关推荐
- java 设置窗体 无边框 关闭按钮_求助 java 如何编写JFrame窗体右上角红色打叉关闭按钮的事件?...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 import java.awt.event.ActionEvent; import java.awt.event.ActionListener; impo ...
- java与数据库教程_[求助]Java与数据库的链接的教程or资料
展开全部 JAVA连接数据库e68a843231313335323631343130323136353331333239303864主要有两种方式: 一是用JDBC-ODBC桥来连接 二是用相关厂商提 ...
- java图形界面 关闭_用 java编写的图形用户界面运行后怎么关不掉
importjava.awt.*;importjavax.swing.*;publicclassGUIDemo{publicstaticvoidmain(String[]args){Framef=ne ...
- java项目----教务管理系统_基于Java的教务管理系统
java项目----教务管理系统_基于Java的教务管理系统 2022-04-22 18:18·java基础 最近为客户开发了一套学校用教务管理系统,主要实现学生.课程.老师.选课等相关的信息化管理功 ...
- 自定义布局Dialog 自定义dialog右上角带叉号的dialog 点击右上角叉号关闭dialog
话说之前写过一遍Android中常见的几种Dialog的介绍和基本用法,但是没有讲到实际项目中最常用到的自定义dialog.正好,马上项目要添加新模块,看到里面有用到自定义dialog部分,于是乎趁着 ...
- java 504错误怎么解决_求助java.lang.NoClassDefFoundError怎么解决,报错信息如下
求助java.lang.NoClassDefFoundError怎么解决,报错信息如下 四月 14, 2018 11:03:07 上午 org.apache.catalina.startup.Embe ...
- java中for语句NS图表示_求助 java的 NS 图怎么写
求助 java的 NS 图怎么写 我学过c的NS图 但是java你有很多类 甚至一个程序你就有几个类 或 方法 ,那怎么写NS图 搜索更多相关的解决方案: java 个类 -------- ...
- Java读取mapinfo格式_求助:如何把mapinfo格式的地图数据放到网页中显示
声明,我可不是做广告哦 mapXtreme Java,是目前用于Internet或企业Intranet唯一的100%纯Java地图服务器.mapInfo mapXtreme Java与J2EE兼容,为 ...
- java是什么格式_是java格式
错误:编码GBK的不可映射字符的解决办法 最近在重新补javaSE的基础,编辑器编写完代码以后,在控制台运行代码段的时候,出现了以下的错误提示:错误:编码GBK的不可映射字符 在通过查询谷哥和度娘以后 ...
最新文章
- C#操作WMI文章汇总
- WCF 绑定(Binding)
- Python_logging模块
- Linux 服务器必备的安全设置,建议收藏!
- AttributeError: module 're' has no attribute 'sub'
- REDIS 关键配置简述
- linux ls命令shell脚本位置,linux - shell脚本到ls并在ls上执行命令结果 - SO中文参考 - www.soinside.com...
- linux ntfs 3g6,CentOS6挂载读写NTFS分区(ntfs-3g)
- RabbitMQ修改默认端口:4369、5672、15672、25672
- python画图turtle小人_python海龟绘图怎么增加每次画圆的半径|海龟python做图教程...
- 线性表之顺序存储结构
- 有了这两本书,学习领域驱动设计会很容易
- python负数字符串转成_python 转字符
- fiddler Android下https抓包全攻略
- geoserver osm 导入_OSM导入PostGreSQL数据库 | 学步园
- RAKsmart日本服务器的综合性能评测
- 怪异盒模型和标准盒模型
- 云师大计算机考研考什么,云南师范大学研究生院,云师大考研复试好难啊。
- 注册美国AppleID
- 战“疫”进行时,企业远程办公指南
热门文章
- python实现模糊搜索_Python 代码实现模糊查询
- python列表元祖字典集合运算_Python基础5:列表 元祖 字典 集合 Json
- Docker实践(六)部署redis
- mysql数据库自增字段_mysql 数据库自增字段
- 下载keep运动软件_keep app下载-keep安卓版(运动健身) - 超好玩
- android 下载视频文件怎么打开,安卓手机支付宝文件夹下的视频文件是什么
- 在C#中引入延迟计算和公平调度
- 开源界也要注意,Apache 基金会与 GitHub 都受美国法律约束
- mysql master status_show master status为空解决办法
- android 应用置顶到最前端_uniApp / 小程序实现一个view滚动到一定高度置顶显示