Java中的单选按钮如何更换选项


    import java.awt.BorderLayout;
    import java.awt.event.*;
    
    import java.awt.Color;
    import java.awt.Container;
    import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;

import javax.swing.ButtonGroup;
import javax.swing.ImageIcon;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JOptionPane;
    import javax.swing.JPanel;
    import javax.swing.JPasswordField;
import javax.swing.JRadioButton;
import javax.swing.JTextField;

    public class tryy {
        public static void main(String[] args) {  //登录界面
      JFrame jf=new JFrame();
      jf.setBounds(450, 300, 700, 450);
      jf.setLayout(new BorderLayout());
      jf.setResizable(false);
       
      extracted(jf);
       
      jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      jf.setVisible(true);
     }

     private static void extracted(JFrame jf) {
      ImageIcon icon=new ImageIcon();  //添加背景图片
      JLabel lable3=new JLabel(icon);
      jf.getLayeredPane().add(lable3,new Integer(Integer.MIN_VALUE));
       lable3.setBounds(0, 0, icon.getIconWidth(), icon.getIconHeight());
       Container cp=jf.getContentPane();
       cp.setLayout(new BorderLayout());
        ((JPanel)cp).setOpaque(false);
     
      
      JPanel panel=new JPanel();  //创建中间容器(面板)
      panel.setLayout(null);
       JLabel lable=new JLabel("教 师 信 息 管 理 系 统",JLabel.CENTER);//设置标题
       lable.setLayout(new BorderLayout());
       lable.setFont(new Font("宋体",Font.BOLD,25));
       lable.setBounds(0, 20, 700, 60);
      //panel.setBackground(Color.BLUE);
      
      JLabel lable1=new JLabel("管理员账号");  //创建提示标签、输入框
      JLabel lable2=new JLabel("密码");
      lable1.setBounds(180, 125, 80, 30);
      lable2.setBounds(200, 175, 80, 30);
      
      JTextField username=new JTextField();
      username.setBounds(255, 125, 230, 30);
      username.setOpaque(false);
      JPasswordField password=new JPasswordField();
      password.setBounds(255, 175, 230, 30);
      password.setOpaque(false);
      
      JButton j1=new JButton("登 录");        //创建登录按钮
      j1.setFont(new Font("宋体",Font.BOLD,15));
      j1.setBounds(275, 255, 170, 30);
      j1.setForeground(Color.black);
      j1.setOpaque(false);
      j1.setBackground(new Color(2,2,2));
       
      panel.add(lable);
      panel.add(lable1);
      panel.add(username);
      panel.add(lable2);
      panel.add(password);
      
      panel.add(j1);
      panel.setOpaque(false);
      
      //JPanel panel1=new JPanel();
      ButtonGroup bg1= new ButtonGroup();//按钮组件
         JRadioButton  jbc1=new JRadioButton("管理员");
         JRadioButton jbc2=new JRadioButton("老师");
          panel.add(jbc1);
         panel.add(jbc2);
          bg1.add(jbc1);
          bg1.add(jbc2);
          jbc1.addActionListener(null);//监听
          jbc2.addActionListener(null);
         jbc1.setBounds(230, 220, 270, 30);
          jbc1.setOpaque(false);
          jbc2.setBounds(360, 220, 270, 30);
          jbc2.setSelected(true);
           panel.add(jbc1);
           panel.add(jbc2);
           panel.setOpaque(false);
    
     jf.add(panel);
    // jf.getContentPane().add(panel1);
      
}}
//选项无法更换,选了管理员之后无法换选老师

单选按钮用setchecked方法切换选中状态

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632