/** * @(#)CnToSpell.java * 版权声明 Easydozer 版权所有 违者必究 * * 修订记录: * 1)更改者:Easydozer * 时 间:2004-10-20 * 描 述:创建 */import java.applet.Applet; import java.awt.Color; import java.awt.Event; import java.awt.Font; import java.awt.Graphics; import java.awt.Label; import java.awt.TextField;class APP extends Applet { Label label = new Label("移动文字"); TextField text = new TextField(10); public void init() { add(label); add(text); } public void paint(Graphics g) { g.setColor(Color.red); g.setFont(new Font("Helvetica", Font.PLAIN, 24)); g.drawString("文字!", 0, 0);//也可以这样画文字的,呵呵 } public boolean action(Event e, Object o) { int x = e.x; int y = e.y; //这个获取鼠标的坐标 return true; }}
public boolean action(Event e, Object o) { int x = e.x; int y = e.y; //这个获取鼠标的坐标 return true; } action事件里面处理呀,移动他们的坐标就好了! 或者重新 public void paint(Graphics g)
public boolean action(Event e, Object o) { int x = e.x; int y = e.y; //这个获取鼠标的坐标 return true; } 事件代码,移动控件的xy坐标 或者重新paint(Graphics g)
给applet添加一个文本框,textarea,添加一个配监听器,监听鼠标移动事件.
当鼠标按下的时候,移动文本框的坐标就好了!
建议用socket实现,保存客户端,要签名,比较麻烦用java.net包建立双向通讯 第二种方法是利用java.net包提供的网络能力。以有连接流通讯方式为例,在服务器端的操作为一般为: ⑴ 创建一个ServerSocket对象,在指定端口监听客户端发来的请求。 ⑵ 在接收到请求时accept()方法将返回一个Socket对象。 ⑶ 用上述Socket对象创建输入、输出流对象。 ⑷ 通过输入、输出流与客户交互。 ⑸ 交互完毕,关闭输入、输出流与Socket。 ⑹ 服务程序运行结束,关闭ServerSocket。 实现代码代码类如:try{boolean flag=true;
Socket clientSocket=null;ServerSocket serverSocket = new ServerSocket(0);
System.out.println("Server listen on: " +serverSocket.getLocalPort());
while(flag){
clientSocket=serverSocket.accept();
DataInputStream is=new DataInputStream( new bufferedInputStream(clientSocket.getInputStream()));
PrintStream os=new PrintStream( new bufferedOutputStream(clientSocket.getOutputStream()));
// 处理Applet请求
os.close();
is.close();
clientSocket.close();
}
serverSocket.close();
}catch( IOException e){
System.err.println(" Exception: "+e);
} 在客户端的操作为: ⑴ 创建Socket对象建立与服务器的连接。 ⑵ 用该Socket对象创建输入、输出流。 ⑶ 与服务器交互。 ⑷ 交互完毕,关闭输入、输出流与Socket。 实现代码类如:
try {
Socket clientSocket =new Socket("serverName",7);
OutputStream os=clientSocket.getOutputStream();
DataInputStream is=new DataInputStream( clientSocket.getInputStream());
// 其它操作.
os.close();
is.close();
clientSocket.close();
}catch(Exception e){
System.err.println("Exception:"+e);
} 这种方法只依赖于标准的Java网络支持,不需要用到附加的软件包或工具, 因此显得相当简洁和灵活,易于实现某些特殊的需要。但在另一方面,服务器端对进入请求以及客户端对返回结果的分析工作量较大。如果服务器端要执行大量的操作,可以考虑使用RMI。
* @(#)CnToSpell.java
* 版权声明 Easydozer 版权所有 违者必究
*
* 修订记录:
* 1)更改者:Easydozer
* 时 间:2004-10-20
* 描 述:创建
*/import java.applet.Applet;
import java.awt.Color;
import java.awt.Event;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Label;
import java.awt.TextField;class APP extends Applet {
Label label = new Label("移动文字");
TextField text = new TextField(10); public void init() {
add(label);
add(text);
} public void paint(Graphics g) {
g.setColor(Color.red);
g.setFont(new Font("Helvetica", Font.PLAIN, 24));
g.drawString("文字!", 0, 0);//也可以这样画文字的,呵呵
} public boolean action(Event e, Object o) {
int x = e.x;
int y = e.y;
//这个获取鼠标的坐标
return true; }}
public boolean action(Event e, Object o) {
int x = e.x;
int y = e.y;
//这个获取鼠标的坐标
return true; }
action事件里面处理呀,移动他们的坐标就好了!
或者重新 public void paint(Graphics g)
public boolean action(Event e, Object o) {
int x = e.x;
int y = e.y;
//这个获取鼠标的坐标
return true; }
事件代码,移动控件的xy坐标
或者重新paint(Graphics g)