那牛
2009-12-03 12:18
浏览 456
已采纳

Swing中实现全选按钮

需求:一个界面上有多个Panel
每个Panel里有两个Panel,一个放置一文本框,一个放置多个多选框

现需要增加一个全选按钮,点击之,当前大Panel内的所有复选框选中
请指教如何实现

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • wocsok 2009-12-03 13:05
    已采纳

    替你写个例子 其实就是加上监听不就好了么 在监听里做判断 import java.awt.BorderLayout;
    import java.awt.Dimension;
    import java.awt.Window;

    import javax.swing.JCheckBox;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.event.ChangeEvent;
    import javax.swing.event.ChangeListener;

    public class Test extends JFrame {

    JPanel panel = new JPanel();
    JCheckBox box1 = new JCheckBox("测试");
    JCheckBox box2 = new JCheckBox("全选");
    public Test(){
        this.add(panel);
        panel.setLayout(new BorderLayout());
        panel.add(box1,BorderLayout.WEST);
        panel.add(box2,BorderLayout.EAST);
        box2.addChangeListener(new ChangeListener() {
    
            public void stateChanged(ChangeEvent e) {
                if(((JCheckBox)e.getSource()).isSelected()){
                    box1.setSelected(true);
                }
                if(!((JCheckBox)e.getSource()).isSelected()){
                    box1.setSelected(false);
                }
    
            }
        });
        this.setDefaultCloseOperation(EXIT_ON_CLOSE);
        this.setSize(new Dimension(200,100));
        this.setVisible(true);
    }
    /**
     * @param args
     */
    public static void main(String[] args) {
        new Test();
    
    }
    

    }

    点赞 打赏 评论
  • wanghaolovezlq 2009-12-03 12:52

    你只要在点击时得到所有的复选框,然后依次设置选中状态就行了嘛

    点赞 打赏 评论

相关推荐 更多相似问题