0

ボタン グループに 2 つのラジオ ボタンがあり、同じパネルにテキスト ボックスとボタンがあります。2番目のボタンが選択されている場合にのみテキストボックスとボタンを有効にし、他のラジオボタンが選択されている場合は無効にしたい。私はこれを試しましたが、うまくいきませんでした。

private void radio_button2ActionPerformed(java.awt.event.ActionEvent evt) {
if(buttonGroup1.getSelection()==radio_button2)
{
    button.setEnabled(true);
    textbox.setEnabled(true);
}

どこで間違ったのですか?

4

1 に答える 1

1

ボタンをクリックしたときにのみイベントが発生するため、ActionListener は使用しません。代わりに、ItemListener を使用して、項目が選択または選択解除されたときに (他のラジオ ボタンをクリックして) イベントが生成されるようにすることができます。何かのようなもの:

radioButton2.addItemListener( new ItemListener()
{
    public void itemStateChanged(ItemEvent e)
    {
        JRadioButton button = (JRadioButton)e.getSource();
        component1.setEnabled( button.isSelected() );
        component2.setEnabled( button.isSelected() );
    }
});
于 2011-06-22T19:27:50.773 に答える