📄 0029.htm
字号:
}catch(IOException e){<br>
throw new PleaseCloseSocketException();<br>
}<br>
<br>
}// method 'client_ask_text' ended<br>
<br>
private void client_ask_refresh()<br>
throws PleaseCloseSocketException {<br>
<br>
try{<br>
if (sender!=null) {<br>
synchronized(sender){<br>
io_out.writeUTF("refresh");<br>
}<br>
}else{<br>
io_out.writeUTF("refresh");<br>
}<br>
}catch(IOException e){<br>
roomDataValid=false;<br>
throw new PleaseCloseSocketException();<br>
}<br>
<br>
}// method 'client_ask_refresh' ended<br>
<br>
private void client_answer_refresh()<br>
throws PleaseCloseSocketException {<br>
<br>
String message=null;<br>
RoomData roomData=null;<br>
int roomID=0;<br>
<br>
rooms=new Rooms(10,5);<br>
try{<br>
while(!((message=io_in.readUTF()).equals("ok"))) {<br>
roomData=new RoomData(message);<br>
rooms.addElement(roomData);<br>
while(!(message=io_in.readUTF()).equals("complete")) {<br>
roomData.addUser(message);<br>
}<br>
}<br>
message=io_in.readUTF();<br>
rooms.setDefault(message);<br>
<br>
roomDataValid=true;<br>
refreshRoomList();<br>
<br>
}catch(IOException e){<br>
roomDataValid=false;<br>
message_TextArea.appendText("\n抱歉,服务器无法请求刷新数据");<br>
throw new PleaseCloseSocketException();<br>
}<br>
}// method 'client_answer_refresh' ended<br>
<br>
private void client_ask_log() throws<br>
PleaseCloseSocketException {<br>
<br>
String message=null;<br>
try{<br>
synchronized(sender){<br>
io_out.writeUTF("log");<br>
io_out.writeUTF(userName);<br>
}<br>
}catch(IOException e){<br>
throw new PleaseCloseSocketException();<br>
}<br>
}// method 'client_ask_log' ended<br>
<br>
private void client_ask_join() throws PleaseCloseSocketException {<br>
<br>
String message=null;<br>
int ID=0;<br>
String subject=null;<br>
int index=0;<br>
<br>
try{<br>
subject=room_Choice.getSelectedItem();<br>
synchronized(sender){<br>
io_out.writeUTF("join");<br>
io_out.writeUTF(subject);<br>
}<br>
roomName=subject;<br>
}catch(IOException e){<br>
throw new PleaseCloseSocketException();<br>
}<br>
}// method 'client_ask_join' ended<br>
<br>
private void client_ask_pause()<br>
throws PleaseCloseSocketException {<br>
<br>
String message=null;<br>
<br>
try{<br>
synchronized(sender){<br>
io_out.writeUTF("pause");<br>
}<br>
}catch(IOException e){<br>
throw new PleaseCloseSocketException();<br>
}<br>
}// method 'client_ask_pause' ended<br>
<br>
private void client_ask_continue()<br>
throws PleaseCloseSocketException {<br>
<br>
String message=null;<br>
<br>
try{<br>
synchronized(sender){<br>
io_out.writeUTF("continue");<br>
}<br>
}catch(IOException e){<br>
throw new PleaseCloseSocketException();<br>
}<br>
}// method 'client_ask_continue' ended<br>
<br>
private void client_ask_newRoom()<br>
throws PleaseCloseSocketException {<br>
<br>
String message=null;<br>
String subject=null;<br>
int roomID=0;<br>
RoomData roomData=null;<br>
<br>
try{<br>
synchronized(sender){<br>
io_out.writeUTF("new");<br>
subject=subject_TextField.getText();<br>
io_out.writeUTF(subject);<br>
}<br>
this.roomName=subject;<br>
}catch(IOException e){<br>
throw new PleaseCloseSocketException();<br>
}<br>
}// method 'client_ask_new' ended<br>
<br>
private void client_ask_quit()<br>
throws PleaseCloseSocketException {<br>
<br>
String message=null;<br>
int index=0;<br>
<br>
try{<br>
synchronized(sender){<br>
io_out.writeUTF("quit");<br>
}<br>
if (sender!=null) {<br>
sender.quit();<br>
sender=null;<br>
}<br>
}catch(IOException e){<br>
throw new PleaseCloseSocketException();<br>
}<br>
<br>
}// method 'client_ask_quit' ended<br>
<br>
<br>
public void openSocket() throws IOException {<br>
s=new Socket(url.getHost(),port);<br>
io_in=new DataInputStream(s.getInputStream());<br>
io_out=new DataOutputStream(s.getOutputStream());<br>
}<br>
// method openSocket ended<br>
<br>
public void run() {<br>
<br>
String message=null;<br>
<br>
while(true) {<br>
try{<br>
if (s!=null) {<br>
commandCenter("ask_refresh",<br>
new DataBag("none","none",0,0,0,0,0));<br>
}<br>
while(logged){<br>
message=io_in.readUTF();<br>
commandCenter(message,new DataBag<br>
("none","none",0,0,0,0,0));<br>
}<br>
synchronized (this) {<br>
try{<br>
wait();<br>
}catch(Exception w){<br>
System.out.println(w);<br>
}<br>
}<br>
}catch(PleaseCloseSocketException e) {<br>
}catch(IOException e) {}<br>
}<br>
}// method 'run' ended<br>
<br>
public void addNewChoice() {<br>
<br>
remove(room_Choice);<br>
room_Choice = new java.awt.Choice();<br>
add(room_Choice);<br>
room_Choice.reshape(60,45,132,23);<br>
room_Choice.setFont(new Font("Dialog", Font.PLAIN, 13));<br>
}<br>
<br>
public void refreshRoomList() {<br>
<br>
RoomData room=null;<br>
<br>
if(rooms!=null) {<br>
addNewChoice();<br>
for(int i=0;i< rooms.size();i++) {<br>
room=(RoomData)(rooms.elementAt(i));<br>
room_Choice.addItem(room.roomName);<br>
}<br>
if (room_Choice.countItems()!=0) {<br>
room_Choice.select(rooms.getDefaultRoomName());<br>
refreshUserList();<br>
}<br>
}<br>
}//method refreshRoomData ended<br>
<br>
public void refreshUserList() {<br>
<br>
String name=null;<br>
RoomData room=null;<br>
String names[]=null;<br>
<br>
if (room_Choice.countItems()!=0) {<br>
name=room_Choice.getSelectedItem();<br>
room=rooms.getRoomByName(name);<br>
<br>
if (room!=null) {<br>
users_List.clear();<br>
names=room.getUsersName();<br>
if (names!=null) {<br>
for(int i=0;i< names.length;i++) {<br>
users_List.addItem(names[i]);<br>
}<br>
}<br>
}<br>
}<br>
}// method refreshRoomData ended<br>
<br>
public void printChat_Area(DataBag data) {<br>
<br>
String message=null;<br>
<br>
message=data.name+':'+data.message;<br>
if (!(message.trim()).endsWith("\n")) {<br>
message=message+'\n';<br>
}<br>
synchronized(this){<br>
chat_TextArea.appendText(message);<br>
}<br>
}<br>
<br>
<br>
public void sendText() {<br>
<br>
String message=null;<br>
DataBag data=null;<br>
<br>
message=chat_TextField.getText();<br>
if ((!(message.equals("")))&&<br>
(!Character.isISOControl(message.charAt(0)))) {<br>
try{<br>
data=new DataBag(userName,message,0,0,0,0,0);<br>
commandCenter("ask_text",data);<br>
chat_TextField.setText("");<br>
printChat_Area(data);<br>
}catch(PleaseCloseSocketException e){<br>
message_TextArea.appendText("抱歉,不能发送句子");<br>
}<br>
}<br>
}<br>
<br>
synchronized public void drawBoard_Canvas(DataBag data) {<br>
<br>
Color color=null;<br>
Graphics g=null;<br>
<br>
color=new Color(data.color);<br>
g=board_Canvas.getGraphics();<br>
g.setColor(color);<br>
g.drawLine(data.x0,data.y0,data.x1,data.y1);<br>
}<br>
//To do with User Event<br>
synchronized void chatButton_Clicked(Event event) {<br>
sendText();<br>
}<br>
<br>
synchronized void chatTextField_EnterHit(Event event) {<br>
sendText();<br>
}<br>
<br>
//change draw color<br>
void colorCanvas12_MouseDown(Event event) {<br>
currentColor_Canvas.setBackground(Color.black);<br>
currentColor_Canvas.repaint();//}}<br>
currentColor=Color.black;<br>
}<br>
<br>
void colorCanvas11_MouseDown(Event event) {<br>
currentColor_Canvas.setBackground(Color.cyan);<br>
currentColor_Canvas.repaint();//}}<br>
currentColor=Color.cyan;<br>
<br>
}<br>
<br>
void colorCanvas10_MouseDown(Event event) {<br>
currentColor_Canvas.setBackground(Color.blue);<br>
currentColor_Canvas.repaint();<br>
currentColor=Color.blue;<br>
}<br>
<br>
void colorCanvas9_MouseDown(Event event) {<br>
currentColor_Canvas.setBackground(Color.gray);<br>
currentColor_Canvas.repaint();//}}<br>
currentColor=Color.gray;<br>
<br>
}<br>
<br>
void colorCanvas8_MouseDown(Event event) {<br>
currentColor_Canvas.setBackground(Color.green);<br>
currentColor_Canvas.repaint();//}}<br>
currentColor=Color.green;<br>
<br>
}<br>
<br>
void colorCanvas7_MouseDown(Event event) {<br>
currentColor_Canvas.setBackground(Color.lightGray);<br>
currentColor_Canvas.repaint();//}}<br>
currentColor=Color.lightGray;<br>
<br>
}<br>
<br>
void colorCanvas6_MouseDown(Event event) {<br>
currentColor_Canvas.setBackground(Color.magenta);<br>
currentColor_Canvas.repaint();//}}<br>
currentColor=Color.magenta;<br>
<br>
}<br>
<br>
void colorCanvas5_MouseDown(Event event) {<br>
currentColor_Canvas.setBackground(Color.orange);<br>
currentColor_Canvas.repaint();//}}<br>
currentColor=Color.orange;<br>
<br>
}<br>
<br>
void colorCanvas4_MouseDown(Event event) {<br>
currentColor_Canvas.setBackground(Color.pink);<br>
currentColor_Canvas.repaint();//}}<br>
currentColor=Color.pink;<br>
<br>
}<br>
<br>
void colorCanvas3_MouseDown(Event event) {<br>
currentColor_Canvas.setBackground(Color.red);<br>
currentColor_Canvas.repaint();//}}<br>
currentColor=Color.red;<br>
<br>
}<br>
<br>
void colorCanvas2_MouseDown(Event event) {<br>
currentColor_Canvas.setBackground(Color.yellow);<br>
currentColor_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -