向高手请教问题!谢谢 要使用你自己写的类,就new一个你自己的类,产生对象就可以用了Frame1 frame = new Frame1(); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不行阿,上午的那个问题还没解决,郁闷死了,当到了frame()里面的时候就不行了把this后面必须有点,如this.*****直接用this到了frame()里面就不认了. 你的想法不对在自己的构造函数引用自己,有什么用?用这个类产生一个窗口 ,在main方法中new 一个 这个类就可以了如class a ,b 都extends Frame想在a中打开b ,在b中控制a , 则在a中 new b(af) 即可,就可在b中控制a ~~a的实例 b 构造函数public b(a as){ ...........} 我现在详细的叙述一下问题:建立了三个java文件: Application1.java,Frame1.java,Frame2.java在Application1.java中包括main函数,在main函数中我Frame1 fr=new Frame1();从而建立了一个新的窗口在这个新的窗口中有一个按钮,在按钮的时间处理中,我加上了********Frame2 fr=new Frame2(参数);**************从而new了一个新的窗口.现在Frame2中有一个按钮,我想通过按这个按钮关闭Frame1窗口.按你的说法,Frame2的构造函数带一个Frame1参数但是上面的那个语句(打星号)是窗口一按钮的事件处理,必然也在Frame1的构造函数中在构造函数中怎样写这个参数呢? import java.awt.*;import java.awt.event.*;public class qw extends Frame{ Button b2; public qw() { setLayout(new FlowLayout()); b2 = new Button("NEW"); b2.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ f1 q = new f1(); q.show(); b2.setEnabled(false); } }); add(b2); this.addWindowListener (new WindowAdapter(){ public void windowClosing(WindowEvent e){ dispose(); System.exit(0); } }); } public static void main(String args[]) { System.out.println("Starting App"); qw f = new qw(); f.setSize(100,100); f.show(); }}class f1 extends Frame{ static f1 f; Button b2; public f1() { setLayout(new FlowLayout()); f = this; setSize(200,200); b2 = new Button("NEW"); b2.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ f2 q = new f2(f); q.show(); b2.setEnabled(false); } }); add(b2); this.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){ dispose(); System.exit(0); } }); } }class f2 extends Frame{ Button b2; public f2(final f1 f) { setSize(200,200); setLayout(new FlowLayout()); b2 = new Button("close f1"); b2.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ f.hide(); f.dispose(); b2.setEnabled(false); } }); add(b2); this.addWindowListener (new WindowAdapter(){ public void windowClosing(WindowEvent e){ dispose(); System.exit(0); } }); } public static void main(String args[]) { System.out.println("Starting App"); qw f = new qw(); f.setSize(100,100); f.show(); }} 小弟想问下 有什么工具能把java应用转换成windows程序啊? 简单Person出错求解 怎样获取特定的节点信息 大家有办法 把一个类加载之后 再输出成一个文件保存在硬盘里吗? 下载J2EE视频教程朋友的快来啊 菜鸟在看 thinking in java 给点建议。谢谢! <html:errors/> 如何换行 想问一个关于命令行编译的问题! 关于实时监控 怎样学JAVA 谁能把速度给我提上去,我。。。 小弟新学 Java ,想各位同人问好!!!
this后面必须有点,如this.*****
直接用this到了frame()里面就不认了.
~~a的实例 b 构造函数public b(a as){
...........
}
建立了三个java文件:
Application1.java,Frame1.java,Frame2.java
在Application1.java中包括main函数,
在main函数中我Frame1 fr=new Frame1();从而建立了一个新的窗口
在这个新的窗口中有一个按钮,在按钮的时间处理中,我加上了
********Frame2 fr=new Frame2(参数);**************
从而new了一个新的窗口.
现在Frame2中有一个按钮,我想通过按这个按钮关闭Frame1窗口.
按你的说法,Frame2的构造函数带一个Frame1参数
但是上面的那个语句(打星号)是窗口一按钮的事件处理,必然也在Frame1的构造函数中
在构造函数中怎样写这个参数呢?
import java.awt.event.*;public class qw extends Frame
{
Button b2; public qw()
{
setLayout(new FlowLayout());
b2 = new Button("NEW");
b2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
f1 q = new f1();
q.show();
b2.setEnabled(false);
}
});
add(b2);
this.addWindowListener (new WindowAdapter(){
public void windowClosing(WindowEvent e){
dispose();
System.exit(0);
}
});
}
public static void main(String args[])
{
System.out.println("Starting App");
qw f = new qw();
f.setSize(100,100);
f.show();
}
}class f1 extends Frame
{
static f1 f;
Button b2; public f1()
{
setLayout(new FlowLayout());
f = this;
setSize(200,200);
b2 = new Button("NEW");
b2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
f2 q = new f2(f);
q.show();
b2.setEnabled(false);
}
});
add(b2);
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
dispose();
System.exit(0);
}
});
}
}class f2 extends Frame
{
Button b2;
public f2(final f1 f)
{
setSize(200,200);
setLayout(new FlowLayout());
b2 = new Button("close f1");
b2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
f.hide();
f.dispose();
b2.setEnabled(false);
}
});
add(b2);
this.addWindowListener (new WindowAdapter(){
public void windowClosing(WindowEvent e){
dispose();
System.exit(0);
}
});
}
public static void main(String args[])
{
System.out.println("Starting App");
qw f = new qw();
f.setSize(100,100);
f.show();
}
}