【发布时间】:2018-09-03 17:16:44
【问题描述】:
所以我是 java 新手,现在正在使用 swing。我有一个方法(第一种方法),当我输入特定的 jField 并释放键时,它会执行一些代码。 我也有 jCheckBox,所以当我勾选或取消勾选复选框时,它会执行一些操作,这是第二种方法。
所以我想当我勾选或取消勾选复选框时让它调用我的第一个方法,第一个方法必须执行它的代码。但似乎我有问题,由于某种原因我无法调用此方法。
private void bruttoTextFieldKeyReleased(java.awt.event.KeyEvent evt) {
//code
}
Second method trying to call first method:
private void pensionCheckBoxStateChanged(javax.swing.event.ChangeEventevt) {
bruttoTextFieldKeyReleased();
}
Those methods were created with this menu
这是提示,但我不确定我需要做什么,它需要一些 KeyEvent?我只想从另一种方法中启动一种方法,不设置任何值也不返回。
【问题讨论】:
-
基于事件的方法,与 Java 中的普通方法工作方式相同,在这种情况下,问题是您没有将所需的 keyEvent 传递给您尝试调用的
bruttoTextFieldKeyReleased方法。您可以创建一个 KeyEvent 并将其传递给该方法,但我怀疑这是您想要做的。而是考虑将bruttoTextFieldKeyReleased中的逻辑提取到另一个方法,比如methodB(),然后在复选框状态更改时调用methodB()。 -
听起来很有趣,但你能告诉我更多关于传递 KeyEvent 或提取逻辑是什么意思吗?您的意思是制作不同的方法并使用事件方法调用此方法吗??
标签: java swing methods jframe call