我有一个问题,我想要一个按钮,一旦你点击它,标签就会隐藏,如果你再次点击按钮,标签就会显示出来。救命! Java Jframe
答案 0 :(得分:1)
您可以在jframe中创建两个组件,并使用actionlistener来检测按钮的单击。
public class MyFrame{
JFrame frame;
JLabel label;
JButton button;
public MyFrame(){
frame = new JFrame("Sample");
frame.setLayout(new FlowLayout());
label = new JLabel("Message");
button = new JButton("Click");
frame.add(label);
frame.add(button);
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
if(label.isVisible(true))
label.setVisible(false);
else
label.setVisible(true);
}
});
frame.setVisible(true);
frame.setSize(200,100);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
答案 1 :(得分:0)
setVisible(true)
和setVisible(false)
就足够了。如果你想让这个JLabel
表现得更加自定义,你可以编写自定义JLabel
,你也可以让它实现ActionListener
并在每次点击时调用changeState()
。
class MyLabel extends JLabel {
private boolean state;
public void changeState(){
state = !state;
if(!state)
setText("");//or "hide" -> setVisible(false);
else
setText("your text");//or show -> setVisible(true);
}
}
答案 2 :(得分:0)
我只提供一些关于如何做到这一点的想法(而不是代码)
首先,您应该拥有UI元素的所有句柄 示例
Button button = ...
Label label = ...
然后你应该为actionPerformed方法编写代码 使用if / else使标签隐藏或显示取决于布尔变量