A--------
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextArea;
public class CZ extends JFrame implements ActionListener{
JTextArea t3 = new JTextArea();//结果框;
JLabel label;
 JButton qd =new JButton("查询");



public CZ(){
setTitle("A");
setSize(400,500);
//setUndecorated(true); //框上面没有缩小化最大化和关闭
setResizable(false);
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 
Container cp = getContentPane();
label=new JLabel();
cp.add(label);

t3.setBounds(0, 0, 400, 400);
label.add(t3);


qd.setBounds(150, 420, 100, 30);
qd.addActionListener(this);
label.add(qd);

}



public static void main(String[] args) {
CZ fr =new CZ();

fr.setVisible(true);
} @Override
public void actionPerformed(ActionEvent e) {
if(e.getSource() == qd){
ZT ys =new ZT();
ys.setVisible(true);

}
}

}

B---------------
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextArea;
public class ZT extends JFrame implements ActionListener{ JTextArea t4 = new JTextArea();//结果框;
JLabel label;
 JButton qd =new JButton("确定");



public ZT(){
setTitle("B");
setSize(300,400);
//setUndecorated(true); //框上面没有缩小化最大化和关闭
setResizable(false);
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 
Container cp = getContentPane();
label=new JLabel();
cp.add(label);

t4.setBounds(0, 0, 300, 300);
label.add(t4);


qd.setBounds(100, 320, 100, 30);
qd.addActionListener(this);
label.add(qd);

}



public static void main(String[] args) {
ZT fr =new ZT();

fr.setVisible(true);
}
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub

}}!!!!!如何把B输入在JTextArea 里面的内容个A !!!!!!

解决方案 »

  1.   

    如何把B输入在JTextArea 里面的内容个A ?
    是传给A吗?
      

  2.   

    在B的构造函数中把A当作参数传给B,然后B中就可以对A进行操作了,当然也可以把B的数据传给A
      

  3.   

    在B的构造函数中把A当作参数传给B,然后B中就可以对A进行操作了,当然也可以把B的数据传给A
      

  4.   

    B中添加一个构造函数
    private A a;
    public B(A a){
        this.a=a;
    }
    然后就可以通过a.方法名来操作了!你只要在A类中添加相应的方法就好了!
      

  5.   

    LS的没看清LZ的程序吧
    两个main函数,分别启动两个应用程序画面
    这不是互相引用实例那么简单,这是进程间通信,要么通过文件共享信息,要么通过socket进行通信
      

  6.   

    帮你修改了B类,直接运行就可以有你要的效果
    import java.awt.Container;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JTextArea;
    public class ZT extends JFrame implements ActionListener{ JTextArea t4 = new JTextArea();//结果框;
    JLabel label;
    JButton qd =new JButton("确定");
    private CZ cz;
    public void setCZ(CZ cz){
    this.cz=cz;
    }
    public CZ getCZ(){
    return this.cz;
    } public ZT(){ cz = new CZ(); setTitle("B");
    setSize(300,400);
    //setUndecorated(true); //框上面没有缩小化最大化和关闭
    setResizable(false);
    setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    Container cp = getContentPane();
    label=new JLabel();
    cp.add(label); t4.setBounds(0, 0, 300, 300);
    label.add(t4);
    qd.setBounds(100, 320, 100, 30);
    qd.addActionListener(this);
    label.add(qd); } public void actionPerformed(ActionEvent e) {
    cz.t3.setText(t4.getText()); } public static void main(String[] args) {
    ZT fr =new ZT();
    fr.setVisible(true);
    fr.cz.setVisible(true);
    } }
      

  7.   

    如果是继承关系就用super关键字,否则就用this关键字。
      

  8.   

    建议LZ研究一下Java中的内存共享机制。
      

  9.   


    import java.awt.Container;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.io.OutputStreamWriter;
    import java.net.ServerSocket;
    import java.net.Socket;import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JTextArea;public class CZ extends JFrame implements ActionListener {
    JTextArea t3 = new JTextArea();// 结果框;
    JLabel label;
    JButton qd = new JButton("查询");
    private boolean started; public CZ() {
    setTitle("A");
    setSize(400, 500);
    // setUndecorated(true); //框上面没有缩小化最大化和关闭
    setResizable(false);
    setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    Container cp = getContentPane();
    label = new JLabel();
    cp.add(label); t3.setBounds(0, 0, 400, 400);
    label.add(t3); qd.setBounds(150, 420, 100, 30);
    qd.addActionListener(this);
    label.add(qd);
    new Thread(new Runnable() {
    public void run() {
    try {
    ServerSocket ss = new ServerSocket(8888);
    started = true;
    while (started) {
    boolean bConnectd = false;
    Socket s = ss.accept();
    bConnectd = true;
    System.out.println("a client connected!");// 调试语句 BufferedReader br = new BufferedReader(
    new InputStreamReader(s.getInputStream()));
    String str = br.readLine();
    t3.setText(str);

    /* BufferedWriter bw = new BufferedWriter(
    new OutputStreamWriter(s.getOutputStream()));
    bw.write("ok");*/
    br.close(); }
    } catch (IOException e) {
    e.printStackTrace();
    }
    }
    }).start();
    } public static void main(String[] args) {
    CZ fr = new CZ();
    fr.setVisible(true);
    } @Override
    public void actionPerformed(ActionEvent e) {
    /* if (e.getSource() == qd) {
    ZT ys = new ZT();
    ys.setVisible(true);
    }*/
    }}
    import java.awt.Container;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.io.OutputStreamWriter;
    import java.net.Socket;
    import java.net.UnknownHostException;import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JTextArea;public class ZT extends JFrame implements ActionListener { JTextArea t4 = new JTextArea();// 结果框;
    JLabel label;
    JButton qd = new JButton("确定");
    Socket s = null;
    BufferedWriter bw = null;
    BufferedReader br = null;
    public ZT() {
    setTitle("B");
    setSize(300, 400);
    // setUndecorated(true); //框上面没有缩小化最大化和关闭
    setResizable(false);
    setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    Container cp = getContentPane();
    label = new JLabel();
    cp.add(label); t4.setBounds(0, 0, 300, 300);
    label.add(t4); qd.setBounds(100, 320, 100, 30);
    qd.addActionListener(this);
    label.add(qd);
    }
    public static void main(String[] args) {
    ZT  fr1 = new ZT();
    fr1.setVisible(true);
    /* new Thread(new Runnable() {
    public void run() {
    fr1 = new ZT();
    fr1.setVisible(true);
    }
    }).start();
    new Thread(new Runnable() {
    public void run() {
    fr2 = new CZ();
    fr2.setVisible(true);
    }
    }).start();*/
    } public void actionPerformed(ActionEvent e) {
    try { s = new Socket("127.0.0.1", 8888);
    //bw = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
    System.out.println("connected!");// 调试语句 String text = t4.getText();
    //fr2.t3.setText(text);
    bw = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
    bw.write(text);
    bw.flush();

    br = new BufferedReader(new InputStreamReader(s.getInputStream()));
    bw.close();
    br.close();
    s.close();
    } catch (IOException e1) {
    // TODO Auto-generated catch block
    e1.printStackTrace();
    }
    }}
      

  10.   

    随便找了个以前论坛上的server和client和在一起了
      

  11.   

    en ..看架势应该楼上的可以啦吧。。呵呵。
    类似单机的qq么俺见过书上的一个类似的c#程序。
      

  12.   

    private CZ cz;
    ZT(CZ cz){
     this.cz = cz;
    }
    ......
    public void actionPerformed(ActionEvent e) {
    String text = t4.getText();
    if(text!=null){
    cz.getT3().setText(text);
    }
    }