mirror of
https://github.com/FatttSnake/ClassroomInteraction.git
synced 2026-04-06 02:11:26 +08:00
79 lines
3.0 KiB
Java
79 lines
3.0 KiB
Java
package com.cfive.classroom.teacher;
|
|
|
|
import com.cfive.classroom.library.net.TeacherNet;
|
|
import com.cfive.classroom.library.net.util.MessageObject;
|
|
import com.cfive.classroom.library.net.util.MessageType;
|
|
import com.cfive.classroom.library.net.util.ReceiveListener;
|
|
|
|
import javax.swing.*;
|
|
import java.awt.event.ActionEvent;
|
|
import java.awt.event.ActionListener;
|
|
import java.awt.event.ComponentAdapter;
|
|
import java.text.SimpleDateFormat;
|
|
import java.time.LocalDateTime;
|
|
import java.time.format.DateTimeFormatter;
|
|
|
|
public class SendMessage {
|
|
private static final SendMessage sendMessage=new SendMessage();
|
|
|
|
private static JFrame frame = new JFrame("发送消息");
|
|
private JPanel rootPanel;
|
|
private JTextArea messageInput;
|
|
private JButton bt_sendMessage;
|
|
private JTextArea messageShow;
|
|
private TeacherNet teacherNet;
|
|
|
|
public SendMessage() {
|
|
//接收学生发过来的留言
|
|
if(teacherNet!=null){
|
|
teacherNet.setOnReceiveListener(new ReceiveListener() {
|
|
@Override
|
|
public void onReceive(MessageObject messageObject) {
|
|
if(messageObject.getMessageType()==MessageType.Chat){
|
|
LocalDateTime sendTime = LocalDateTime.now();
|
|
messageShow.append("学生 "+messageObject.getStuName()+": "+sendTime.format(DateTimeFormatter.ofPattern("yyyy年MM月dd日 HH时mm分ss秒"))+'\n'+messageObject.getMessage());
|
|
System.out.println();
|
|
}
|
|
|
|
}
|
|
});
|
|
}
|
|
|
|
|
|
//发送按钮的监听
|
|
bt_sendMessage.addActionListener(new ActionListener() {
|
|
@Override
|
|
public void actionPerformed(ActionEvent e) {
|
|
String messageToAll = messageInput.getText();
|
|
if(messageToAll!=null){
|
|
LocalDateTime sendTime = LocalDateTime.now();
|
|
messageShow.append("@所有人: "+sendTime.format(DateTimeFormatter.ofPattern("yyyy年MM月dd日 HH时mm分ss秒"))+'\n'+messageToAll+'\n');
|
|
MessageObject messageObject = new MessageObject(null,null,null,"@所有人:"+messageToAll,null,null,null,MessageType.ChatToAll);
|
|
teacherNet.sendAllMessage(messageObject);
|
|
messageInput.setText("");
|
|
}else {
|
|
JOptionPane.showMessageDialog(null,"无发送内容","错误!",JOptionPane.ERROR_MESSAGE);
|
|
}
|
|
|
|
}
|
|
});
|
|
}
|
|
|
|
public static void main(String[] args) {
|
|
frame.setContentPane(sendMessage.rootPanel);
|
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
|
frame.pack();
|
|
frame.setVisible(false);
|
|
}
|
|
|
|
public void start(TeacherNet teacherNet1){
|
|
frame.setContentPane(sendMessage.rootPanel);
|
|
frame.setSize(600,400);
|
|
frame.setLocationRelativeTo(null);
|
|
frame.setResizable(false);
|
|
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
|
|
frame.setVisible(true);
|
|
sendMessage.teacherNet = teacherNet1;
|
|
}
|
|
}
|