JAVA中我要在一个JFrame中调用另一个类中的JPane 应该怎样实现呢?

 我来答
死后是好人
2011-08-27 · TA获得超过2638个赞
知道小有建树答主
回答量:628
采纳率:0%
帮助的人:962万
展开全部
将你用的那个类单独拿出来,单独继承JPanel类,里面的布局,一样就行,注意JFranme里的变量要移到新的类里,主方法调用的时候另外调用,
public class Cl1 extends JFrame
{
……
JPanel jpanel2=new JPanel();
JButton jbutton=new JButton("s");
jpanel2.add(jbutton);
Container content=getContentPane();
content.add(jpanel2);
……
}
改为
public class Cl1 extends JFrame
{
……
JPanel2 jpanel2=new JPanel2();
Container content=getContentPane();
content.add(jpanel2);
……
}

public class JPanel2 extends JPanel{
……
JButton jbutton=new JButton("s")
this.add(jbutton);
//注意jbutton的触发事件及处理要移过来
……
}
这样你的
public class Cl1 extends JFrame中就可以添加一摸一样的面板了
但是注意button等控件处理触发事件的方式是一样的
最好在处理事件时用if语句加以区分,如果你这两个面板只是格式一样,而作用不一样的话
也可以单独写一个类,类里的方法就是事件的处理方法
比如
public class OP{
void fun(int k){
switch(k)
case 1:
方法1();
break;
……
}
方法1(){
}
方法2(){
}
方法3(){
}
}

不过一般来说,如果你需要调用另一个类中的JPanel应该是完全一样的,连事件也是一样的,用不到这么麻烦
百度网友7bfe765
2011-08-27
知道答主
回答量:39
采纳率:0%
帮助的人:20.7万
展开全部
你可以试试“持有对方的引用”,在你构造JFrame时将含有Jpane的那个类的对象作为参数传给JFrame。然后你写个方法来得到它的JPane
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式