0
  1. 如何仅在内部框架标题栏上删除或隐藏左侧下拉菜单,而不是删除或隐藏整个标题栏。

  2. 如何通过在 jdesktop 窗格中按住鼠标来设置不移动 jinternal 框架。

检查下面的快照以更好地理解我的问题我想要什么:

http://i49.tinypic.com/1zfned2.jpg

4

2 回答 2

1

据我所知,唯一的方法是将您自己的 UI 委托用于内部框架。请参阅http://today.java.net/pub/a/today/2007/02/22/how-to-write-custom-swing-component.html了解 UI 委托如何工作的文章。

由于您似乎使用 Synth 的外观感觉,您应该能够轻松创建SynthInternalFrameUI自己createNorthPane()SynthInternalFrameTitlePane.

此自定义标题窗格将依次覆盖该addSubComponents()方法,以便不添加menuButton. 我还没有测试过所有这些,所以也许你需要重写其他方法。

于 2012-12-08T18:04:16.380 回答
0

1.如何仅在内部框架标题栏上删除或隐藏左侧下拉菜单,而不是删除或隐藏整个标题栏。源代码:

BasicInternalFrameUI ui = (BasicInternalFrameUI)internalFrame.getUI();
Container north = (Container)ui.getNorthPane();
north.remove(0);
north.validate();
north.repaint();

2.如何在jdesktop窗格中设置不通过鼠标按住移动内部框架。源代码:

 for(MouseListener listener : ((javax.swing.plaf.basic.BasicInternalFrameUI) internalFrame.getUI()).getNorthPane().getMouseListeners()){
        ((javax.swing.plaf.basic.BasicInternalFrameUI) internalFrame.getUI()).getNorthPane().removeMouseListener(listener);
        }

谢谢

于 2012-12-11T06:22:16.140 回答