[英]How to Hide or remove a JLabel
我已经宣布了一个JLable如下;
l = new JLabel("Hello");
l.setHorizontalAlignment(SwingConstants.CENTER);
panel.add(l);
现在,我想隐藏或删除它。 应该叫什么方法?
我试过l.removeAll();
<---什么都没有。
还有一个calle remove(int)
,它接受一个int。 但我不知道该作为参数传递什么。
还有一些叫做hide()
东西。 但是它被弃用了。
i tried l.removeAll(); <--- nothing hapend.
你需要调用remove
JLabel
添加到的JPanel
:
panel.remove(l);
//after that you need to call this to revalidate and repaint the panel
panel.revalidate();
panel.repaint();
只是隐藏而不是删除电话
l.setVisible(false);
尝试panel.remove(l);
panel.removeAll()也应该可以工作,但这也会删除可能已添加到面板的其他组件。
你可以试试:
setVisible(false)
这可能对你有所帮助
隐藏标签
l.setVisible(false);
通过将Label对象作为参数传递从父项中删除
panel.remove(l);
删除所有组件
panel.removeAll();
hide()
的javadoc告诉应该使用setVisible()
。 所以尝试调用setVisible(false)
。
我在项目中遇到了同样的问题。
您应该确保删除以前的控件并刷新面板。
看到这个代码段:
panel.removeAll();
panel.revalidate();
希望这有助于你所有的最好:)
你必须使用方法getContentPane()
。 这种方式可以通过组件的声明名称删除元素。
private JFrame frame; private JLabel label; ... frame.getContentPane().remove(label);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.