java中一个类中的输出结果如何显示在另一个类生成的对话框中??急。。。
3个回答
展开全部
import javax.swing.*;
import javax.swing.text.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.util.concurrent.*;
/**
* @author Hardneedl
*/
public class DialogDemo extends JDialog {
private final static Dimension SIZE = new Dimension(200,100);
public Dimension getPreferredSize() {return SIZE;}
public Dimension getMinimumSize() {return SIZE;}
public Dimension getMaximumSize() {return SIZE;}
public Dimension getSize() {return SIZE;}
public String getTitle() {return getClass().getName();}
private JTextComponent textComponent;
public DialogDemo() {
super();
lay();
handleEvent();
pack();
setVisible(true);
}
private void handleEvent(){
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e) {
System.exit(1);
}
});
Runnable task = new TextObserve(textComponent);
new Observable(){
public void notifyObservers(Object arg) {
setChanged();
super.notifyObservers(arg);
}
}.addObserver((Observer)task);
Executors.newSingleThreadScheduledExecutor().scheduleAtFixedRate(task,0,1,TimeUnit.SECONDS);
}
private void lay(){
getContentPane().add(new JScrollPane(textComponent=new JTextArea()),BorderLayout.CENTER);
}
private class TextObserve implements Observer,Runnable{
private JTextComponent t;
private TextObserve(JTextComponent t) {this.t=t;}
public void update(Observable o, Object arg) {
if(arg!=null)t.setText(arg+"\r\n");
}
public void run() {
update(null, Calendar.getInstance().getTime());
}
}
public static void main(String[] args) {
SwingUtilities.invokeLater(
new Runnable() {
public void run() {new DialogDemo();}
}
);
}
}
展开全部
将这个类的方法做成有返回值的,然后将结果return。
另一个类再调用这个方法,就可以得到输出结果
另一个类再调用这个方法,就可以得到输出结果
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
对话框的类,调用输出结果的类 不就好了?
更多追问追答
追问
求源码,,,
追答
在对话框类中,类似这样写:
calssa a= new classa();
string str = a.retrunstring();
this.msgbox.show(str);
以上方面名称都是乱写,只是表示这样一个过程。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询