在JRadioButton上设置JTextField可见单击

时间:2015-11-30 10:08:02

标签: java swing user-interface netbeans

我正在Netbeans中创建一个GUI,我想设置一个文本字段,以便在选择单选按钮时显示。出于某种原因,检测到单选按钮单击,但选择后不显示文本字段。有关如何处理此问题的任何建议?我的代码粘贴在下面。文本字段名为newContainerNameInput,单选按钮为newContainerRadioButton:

    containersButtonGroup.add(newContainerRadioButton);
    newContainerRadioButton.setText("Create a new container");
    newContainerRadioButton.addItemListener(new java.awt.event.ItemListener() {
        public void itemStateChanged(java.awt.event.ItemEvent evt) {
            newContainerRadioButtonItemStateChanged(evt);
        }
    });
    newContainerRadioButton.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            newContainerRadioButtonActionPerformed(evt);
        }
    });

    newContainerNameInput.setText("Enter new container name here");
    newContainerNameInput.setVisible(false);
private void newContainerRadioButtonActionPerformed(java.awt.event.ActionEvent evt) {                                                        
    System.out.println("test");
    newContainerNameInput.setVisible(true);
}  

1 个答案:

答案 0 :(得分:1)

ActionListener

RadioButton中替换以下代码
private void newContainerRadioButtonActionPerformed(java.awt.event.ActionEvent evt) {                                                        
  System.out.println("test");
  newContainerNameInput.setVisible(true);
  revalidate();
} 

revalidate()正在做两件事。首先invalidate()validate()。通过这样做,您的组件将被标记为无效并再次进行验证。这意味着再次布局..有关详情,请参阅javadoc