jframe间如何传递参数!

0清风0 2008-04-09 09:57:04
我想做一个窗体类似字典帮助,其他窗体可以调用此窗体,返回相映的值!这就涉及到jframe间传递参数!请高手指点?
...全文
298 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
horizonlyhw 2008-04-09
  • 打赏
  • 举报
回复
JButton jb = new JButton("test");
JTextField jtf = new JTextField();
比如说你在点击jb这个按钮的时候 弹出一个JDialog 这个JDialog里面有个JComboBox 你选择了相应的值,然后想显示在主框架的jtf中
只要在这个Dialog中写上jtf.setText(JComboBox.getSelectedValue)就行了
0清风0 2008-04-09
  • 打赏
  • 举报
回复
"在b中定义",没太明白,可以帮我写个小例子吗?
horizonlyhw 2008-04-09
  • 打赏
  • 举报
回复
那就在b中设定 比如 JTextField jta = new JTextField () 是A中的, 你就在B中设定jta.setText(B中的值); 就行了 这样就不用管主窗体是谁了
0清风0 2008-04-09
  • 打赏
  • 举报
回复
假如A是主窗体,B是新打开的窗体,我想在B关闭的时候返回值给A窗体!
主窗体也可能是C或者D!
horizonlyhw 2008-04-09
  • 打赏
  • 举报
回复
你把此窗体的组件都定义在外面 比如说 JTextField 到时候你想要值的时候 就可以直接用getText()了 或者在外面定义一个变量存储调用的JFrame里面的值
cheekis 2008-04-09
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 panjinszw 的回复:]
假如A是主窗体,B是新打开的窗体,我想在B关闭的时候返回值给A窗体!
主窗体也可能是C或者D!
[/Quote]

简单方式:创建B窗体时,把A实例作为参数传过去,当然可以随意传值了;
或者在设计上,A窗体可以有public static 组件,其它窗体也可以任意修改A窗体的内容;
提醒,改了值后,别忘了刷新窗体。呵呵
icekingson 2008-04-09
  • 打赏
  • 举报
回复
package bc;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

/*****************************************
*
* @author icekingson 08/4/9
*
* 学习: 在类之间方法的调用, 如何传递类
*
****************************************/

public class ff
{
public ff()
{
final Frame f = new Frame("窗口一");
JButton jb = new JButton("创建窗口二");
final Panel p = new Panel();
f.add(p);
p.add(jb);
jb.setBounds(10, 10, 10, 10);

f.addWindowListener(new WindowAdapter()
{
public void windowClosing (WindowEvent e)
{
System.exit(0);
}
}
);

jb.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
String input = e.getActionCommand();
if(input.equals("创建窗口二"))
{
final Frame f2 = new Frame("窗口二");
f2.setSize(300,300);
f2.setLocation(400,400);
f2.setVisible(true);

f2.addWindowListener(new WindowAdapter()
{
public void windowClosing (WindowEvent e)
{
new Label(f,p,new String("窗口二已关闭"));
f2.dispose();
}
});
}
}
});

f.setSize(300,300);
f.setVisible(true);
}

public static void main(String[] args)
{
new ff();
}
}


class Label
{
private JLabel j= null;
private Frame lf = null;
private Panel p =null;
public Label(Frame f,Panel p,String str)
{
lf= f;
this.p = p;
j = new JLabel(str);
this.p.add(j);
f.setVisible(true);
}
}



这个代码基本可以实现了 代码是乱了点 但是功能可能是你想要的吧
接分接分!!!
JFrame应用软件开发平台是一个基于JavaEE的面向应用软件开发的框架及自动化代码生成平台。通过使用JFrame,应用软件的开发不再需要重头做起,只需通过JFrame自动代码生成工具配置、生成业务代码,并在此基础上简单地补充的业务逻辑即可。 JFrame降低了软件开发人员的要求,开发人员也无需掌握太多的编程知识,只需掌握Java与JavaScript基础知识,就可在平台上进行二次开发。TJFrame的目标是:“直接降低软件企业80%的研发成本,缩短项目开发发周期,提升客户满意度”;应用软件开发过程中80%的重复工作将由JFrame来完成,20%的特殊业务逻辑代码由开发人员在生成的代码基础上补充完善。 JFrame应用软件开发平台就如“一套毛胚房”,提供了软件的基本框架和相关基础设施;软件开发团队获取该平台后,可以对其进行“二次装修”,根据自己的业务需求,在其基础之上进行二次开发,实现满足业务需求的应用软件。JFrame应用软件开发平台作为作基础软件,能够满足您应用软件开发的各种需求,而且特别适合于各类管理信息系统的开发。 JFrame开发团队将不断的完善其功能,以使其能够满足更广泛的需求。JFrame不承诺可以实现“零代码”开发,因为业务逻辑千变万化,不可能有真正的“零代码”开发平台,但JFrame却是解决软件工程问题的“银弹”。

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧