📄 chatservermidlet.java
字号:
package example;
import java.util.Vector;
import javax.microedition.io.Connector;
import javax.microedition.io.Datagram;
import javax.microedition.io.UDPDatagramConnection;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.TextField;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
public class ChatServerMIDlet extends MIDlet implements CommandListener,Runnable{
private TextField tfMsg = new TextField("输入聊天信息","",255,TextField.ANY);
private Command cmdSend = new Command("发送",Command.SCREEN,1);
private Form frmChat = new Form("聊天界面");
private Display display;
private UDPDatagramConnection udc = null;
private final int MAX = 255;
private String address;
protected void startApp() throws MIDletStateChangeException {
display = Display.getDisplay(this);
display.setCurrent(frmChat);
frmChat.addCommand(cmdSend);
frmChat.append(tfMsg);
frmChat.setCommandListener(this);
try{
udc = (UDPDatagramConnection)Connector.open("datagram://:9999");
new Thread(this).start();
}catch(Exception ex){
ex.printStackTrace();
}
}
public void commandAction(Command c,Displayable d){
if(c==cmdSend){//发送
String msg = tfMsg.getString();
try{
Datagram dg = udc.newDatagram(msg.getBytes(), msg.getBytes().length);
dg.setAddress(address);
udc.send(dg);
}catch(Exception ex){
ex.printStackTrace();
}
}
}
public void run(){
while(true){
try{
Datagram dg = udc.newDatagram(MAX);
udc.receive(dg);
address = dg.getAddress();
String msg = new String(dg.getData(),0,dg.getLength());
frmChat.append(msg + "\n");
}catch(Exception ex){
ex.printStackTrace();
}
}
}
protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
// TODO Auto-generated method stub
}
protected void pauseApp() {
// TODO Auto-generated method stub
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -