Java JButton';s动作监听器
在下面的代码中,当_uiChkTestAction和_uichktestimejcheckbox都未选中时,单击bu1按钮使它们都处于选中状态,但单击bu2按钮不会将_uichktestimejcheckbox从未选中变为选中状态 那么,我的代码有问题吗Java JButton';s动作监听器,java,swing,jbutton,jcheckbox,Java,Swing,Jbutton,Jcheckbox,在下面的代码中,当_uiChkTestAction和_uichktestimejcheckbox都未选中时,单击bu1按钮使它们都处于选中状态,但单击bu2按钮不会将_uichktestimejcheckbox从未选中变为选中状态 那么,我的代码有问题吗 import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import j
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
public class TestActionItemListener
{
public static void main(String[] _args)
{
EventQueue.invokeLater(new Runnable(){
public void run(){
JFrame _fra = new JFrame("Testing");
_fra.setSize(500, 500);
_fra.setLayout(new FlowLayout());
final JCheckBox _uiChkTestAction = new JCheckBox("ActionListener");
_uiChkTestAction.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent _ev)
{
System.out.println("State by ActionListener: " + _uiChkTestAction.isSelected());
}
});
final JCheckBox _uiChkTestItem = new JCheckBox("ItemListener");
_uiChkTestItem.addItemListener(new ItemListener()
{
public void itemStateChanged(ItemEvent e)
{
System.out.println("State by ItemListener: " + _uiChkTestAction.isSelected());
}
});
JButton bu1 = new JButton("actionlistener bu");
bu1.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
_uiChkTestAction.setSelected(true);
}
});
JButton bu2 = new JButton("itemlistener bu");
bu1.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
_uiChkTestItem.setSelected(true);
}
});
_fra.add(_uiChkTestAction);
_fra.add(_uiChkTestItem);
_fra.add(bu1);
_fra.add(bu2);
_uiChkTestAction.setSelected(true);
_uiChkTestItem.setSelected(true);
_fra.setVisible(true);
}}
);
}
};
您将两个侦听器添加到同一按钮
bu1
iso将一个添加到bu1
,一个添加到bu2您将两个侦听器添加到同一按钮bu1
iso将一个添加到bu1
和一个添加到bu2您将两次向bu1
添加侦听器。将第二个添加到bu2
您将向bu1
添加两次侦听器。将第二个添加到bu2
请学习java命名约定并遵守它们。请学习java命名约定并遵守它们them@FffDgg没有理由结束这个问题。只要按你的回答做标记就行了sufficient@FffDgg没有理由结束这个问题。只要按你所做的那样标注答案就足够了