如何把b.java的动态变量text2 传输到a.java
b.java--代码如下public class HtmlDemo extends JPanel implements ActionListener {
String text2;
public HtmlDemo( ) {
String initialText = "大家好" +
htmlTextArea = new JTextArea(100, 200);
htmlTextArea.setText(initialText);
JScrollPane scrollPane = new JScrollPane(htmlTextArea);
JButton changeTheLabel = new JButton("Change-------确定");
//点击 changetehlablel后 能成功显示出 text2的值
//只要 在htmlTextArea修改成什么 多可以成功显示
如: String initialText = "大家好啊啊啊啊啊" + 也能显示。没有问题
public void actionPerformed(ActionEvent e) {
text2=htmlTextArea.getText();
theLabel.setText(text2);
System.out.println("b.java的 点击change-确定后text2的值 "+text2);
}
}
======想把text2的值传递 到 a.java的 一个 事件执行方法里
======可惜 只能显示第一次从b.java传递过来的text2的值 “大家好“
=====如果把b.java 的htmlTextArea修改成 “大家好啊啊啊啊啊“
=====a.java得到还是第一次 “大家好”;
=========a.java代码如下============================
void javascriptButton7_actionPerformed(ActionEvent e) {
System.out.println("==============a.java 打开新窗口 获取 从b.java的数值 ");
JFrame frame = new JFrame("HtmlDemo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
b bb= new b( );
posttext= bbTextArea.getText();//方法二 只能显示 第一次从b.java传递过来 的 ”大家好“
//可是当b.java修改成 ”大家好啊啊啊啊 “
//还是显示 第一次从b.java传递过来 的 ”大家好“
posttext2=bb.text2; //方法一 如果我点击几次 多是 显示null
System.out.println("================bb.getText()======= "+posttext);
System.out.println("===============bb.text2====== "+bb.text2);
frame.add(htmldemo);
frame.setSize(888, 688);
frame.setVisible(true);
}
[ 本帖最后由 cixi20100 于 2010-10-7 19:07 编辑 ]
----------------解决方案--------------------------------------------------------
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class HtmlDemo extends JFrame implements ActionListener {
private String text2="hello";
private JTextArea htmlTextArea;
public HtmlDemo() {
JPanel p1 = new JPanel();
JPanel p2 = new JPanel();
String initialText = "大家好";
JTextArea htmlTextArea = new JTextArea(1,10);
htmlTextArea.setText(initialText);
p1.add(htmlTextArea);
JButton changeTheLabel = new JButton("change");
changeTheLabel.addActionListener(this);
p2.add(changeTheLabel);
add(p1,BorderLayout.NORTH);
add(p2,BorderLayout.SOUTH);
setVisible(true);
pack();
setBounds(100,100,100,100);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String args[]) {
new HtmlDemo();
}
public void actionPerformed(ActionEvent arg0) {
htmlTextArea.setText(text2);
}
}
----------------解决方案--------------------------------------------------------