我的应用程序有一个名为 myapp
的主类,它有一个 jLayeredPane。
我有一个名为 mycustompanel
的类,它扩展了 jpanel。
在 myapp
中,我有一个方法可以在 jLayeredPane 中添加多个 mycustompanel
对象。添加的 mycustompanel
数量不固定。
mycustompanel
有一个名为 personsurname
的属性,当将 mycustompanel
添加到 jLayeredPane 时,该属性会被赋予一个值。
mycustompanel
有这个监听器:
@Override
public void mouseClicked(MouseEvent evt){
if(evt.getButton() == MouseEvent.BUTTON1){
answer=personsurname;
JOptionPane.showMessageDialog(null,answer);
}
}
其中答案被定义为公共(public)字符串。这样我就可以看到所单击的 mycustompanel
的 personsurname
的值。
我想要的是获取myapp
的答案值。
我想我应该添加一个像
这样的方法public String getAnswer() { 返回答案; }
到 mycustompanel
,但是如何从主类调用此方法,以便每次单击 mycustompanel
时 personsurname
单击的特定项目的值会获取到 myapp
类吗?
最佳答案
嗯,据我了解,您可以在 MyApp 中编写 setPersonSurnameInMyapp 方法。 所以每次调用 mouseevent 时,您都会调用该方法并将值保存在 Myapp 中的变量中吗?
关于java - 自定义 Swing 组件向父类返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21476874/