java中怎么将面板上的组件和Panel上的组件相互传递值

java中怎么将面板上的组件和Panel上的组件相互传递值,第1张

java swing 提供了firePropertyChange("REAL_VALUE",Object

oldValue, Object

newValue)方法,在需要交互的面板用该方法传递值,其中第一参数为标示,可以任意命名,在另一个面板获取时标示贺族同名即此拍派可。

绘制界面的时候时间PropertyChangeListener这个接口,重写下面这个森贺方法,这是swing内置的监听,很好用

@Override

public void propertyChange(PropertyChangeEvent evt) {

if (evt.getPropertyName().equals("REAL_VALUE")) {

/*用evt对象可获取传递的值,oldValue或newValue*/

}

假如有两个窗体 fom1 和form2在form1里某按钮单击打开form2,且form2里有个textBox1控件并要为该控件赋值则可以

Form2 f2 = new Form2()

f2.Show()

((TextBox)(f2.Controls.Find("textBox1",true)[0])).Text = "value"

实现了从form1 *** 作form2里的控件

如果实现传回的话就复杂些需要重构form2的构造函数和新建一个form1对象

新加个

public Form1 pform

public Form2(Form1 frm)

{

pform = frm

InitializeComponent()

}

在form1中修改为

Form2 f2 = new Form2(this)

f2.Show()

在fomr2中

直接使用pform就可以 *** 作form1对象了,传递则蠢没值孙纳更没问档悉题


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11978744.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存