开发者

Check whether a JPanel contains a JButton

I have added a button to a JPanel. I want to remove the button if the JPanel contains the button. Is ther开发者_如何学运维e any way to check whether the JPanel contains the button?


If you have a reference to the JButton, call getParent(). If the parent is null, the button is not in the panel (or any container).

Alternately, do as @kleopatra suggested and call getComponents() on the JPanel instance and iterate the array looking for anything that is an instanceof JButton.


Is checking necessary? If not, then just remove the JButton without checking. Nothing will happen if it is not contained by the JPanel.


If you have a reference to the button:

List<Component> componentList = Arrays.asList(panel.getComponents());
if (!componentList.contains(button)) {
  panel.add(button);
}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜