📄 talkslave.java
字号:
package examples.talk;
import com.ibm.aglet.*;
import com.ibm.aglet.event.MobilityAdapter;
import com.ibm.aglet.event.MobilityEvent;
import java.awt.Component;
import java.awt.Window;
import java.io.PrintStream;
// Referenced classes of package examples.talk:
// TalkWindow
public class TalkSlave extends Aglet
{
transient String name;
transient TalkWindow window;
AgletProxy masterProxy;
public TalkSlave()
{
name = "Unknown";
window = null;
masterProxy = null;
}
private String getProperty(String s)
{
return System.getProperty(s, "Unknown");
}
public boolean handleMessage(Message message)
{
if(message.sameKind("dialog"))
{
window.show();
} else
{
if(message.sameKind("text"))
{
String s = (String)message.getArg();
if(!window.isVisible())
window.show();
window.appendText(s);
return true;
}
if(message.sameKind("bye"))
{
window.appendText("Bye Bye..");
try
{
Thread.currentThread();
Thread.sleep(3000L);
}
catch(Exception exception) { }
message.sendReply();
dispose();
}
}
return false;
}
public void onCreation(Object obj)
{
masterProxy = (AgletProxy)obj;
addMobilityListener(new MobilityAdapter() {
public void onArrival(MobilityEvent mobilityevent)
{
window = new TalkWindow(TalkSlave.this);
window.pack();
window.show();
try
{
name = getProperty("user.name");
}
catch(Exception exception)
{
exception.printStackTrace();
}
}
});
}
public void onDisposing()
{
if(window != null)
{
window.dispose();
window = null;
}
}
private void print(String s)
{
System.out.println("Receiver : " + s);
}
public void sendText(String s)
{
try
{
if(masterProxy == null)
return;
masterProxy.sendMessage(new Message("text", name + " : " + s));
}
catch(Exception exception)
{
exception.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -