繁体   English   中英

J标签和J复选框

[英]J Label and J checkbox

我有一个Jlabel和一个复选框。 我要这样做,以便可以单击Jlabel,然后将复选框打勾。 我需要将其用作标签,因为我将其用于其他用途。 通常,我要做的就是只包含一个带有某些文本的复选框,但是这次我需要一个标签和复选框,并且需要单击该标签时才选中该复选框。 下面是我的代码。 我尝试将动作侦听器添加到标签,但收到一条错误消息,说它是未定义的类型。 谢谢...

 JCheckBox _mycheckbox = new JCheckBox();
 JLabel _mylabel = new JLabel(_mylabel);

简单的方法是将文本分配给复选框本身:

JCheckBox _mycheckbox = new JCheckBox("Tick Me"); //gives you checkbox, along with clickable text

另一个选项是在标签上设置动作侦听器,以模拟复选框的单击:

_mylabel.addActionListener((e)->_mycheckbox.doClick()); //java 8 lambda

在Java 8之前,您可以

_mylabel.addActionListener(new ActionListener(){
   @Override
   public void actionPerformed(ActionEvent ae){
      _mycheckbox.doClick();
   }
});

您可以考虑将MouseListener添加到JLabel并重写mouseClicked()方法。

_mylabel.addMouseListener(new MouseAdapter(){
    @Override
    public void mouseClicked(MouseEvent e){
        //do whatever                    
    }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM