【问题标题】:Remove maximize, minimize, close button from JPanel从 JPanel 中删除最大化、最小化、关闭按钮
【发布时间】:2013-10-10 01:05:17
【问题描述】:

在 JDesktopPane 中,我包含了一个 JPanel,其中列出了一些设备的树形视图。我不需要图中显示的那个面板中的那些可调整大小和关闭选项。 (最大化、最小化、关闭)。我尝试了很多方法,但无法隐藏这些功能。任何想法。

【问题讨论】:

  • JInternalFramesetMaximizable()setIconifiable()setClosable()
  • 那是JInternalFrame 吗?如果是这样,请使用setIconifiable(false)setMaximizable(false)

标签: java swing jpanel jdesktoppane


【解决方案1】:

您实际需要处理的组件是JInternalFrame,其中包含您上面提到的JPanel。这应该有许多功能来启用/禁用与最小/最大/关闭按钮相关的操作(例如:setMaximizable(bool enabled))。

我不知道这是否会隐藏按钮或只是禁用它们,因此您可能不得不使用 R.J 提到的技巧的一些变体 - 手动删除按钮。

【讨论】:

    【解决方案2】:
    setMaximizable(false), 
    setMinimizabel(false), 
    setClosable(false)
    

    【讨论】:

      【解决方案3】:

      您可以像这样从摆动组件中删除最小化、最大化和关闭按钮:-

      public void removeMinMaxClose(Component comp) {
          if (comp instanceof AbstractButton) {
              comp.getParent().remove(comp);
          }
          if (comp instanceof Container) {
              Component[] comps = ((Container) comp).getComponents();
              for (int x = 0, y = comps.length; x < y; x++) {
                  removeMinMaxClose(comps[x]);
              }
          }
      }
      

      【讨论】:

        猜你喜欢
        • 2015-05-02
        • 2012-01-10
        • 2011-05-14
        • 2011-02-27
        • 2011-02-09
        • 2016-03-04
        • 2014-11-25
        • 2019-04-06
        相关资源
        最近更新 更多