当我在JMenu上单击鼠标时,它工作正常。

我点击我的鼠标,它消失了(正常)。然后,我双击JTree中唯一的条目。
然后,当我单击我的JMenu时,它看起来像这样。它出现在JTree后面?

当我调整窗口大小时,它会恢复正常。直到JTree再次获得焦点。
这是我的代码的样子,我继承了一个jframe,这段代码在构造函数中
Container cp = getContentPane();
//1. menu
JMenuBar menu = new JMenuBar();
//...
cp.add(menu, BorderLayout.NORTH);
//2. split pane
JSplitPane sp = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
//...
{
//3a. scrollpane (left)
ScrollPane treeView = new ScrollPane();
treeView.setMinimumSize(new Dimension(0,0));
sp.add(treeView, JSplitPane.LEFT);
{
//3ai. treeview
tree = new ObjectTree();
treeView.add(tree);
}
//3b. scrollpane (right)
ScrollPane tabView = new ScrollPane();
tabView.setMinimumSize(new Dimension(0,0));
sp.add(tabView, JSplitPane.RIGHT);
{
//3bi tabview
ObjectTabPane view = new ObjectTabPane();
tabView.add(view);
}
}
cp.add(sp, BorderLayout.CENTER);
this.setSize(700, 500);发布于 2011-09-13 19:24:46
您正在混合使用Swing和AWT组件。不要这样做,因为这会导致你面临的问题。使用JScrollpane而不是ScrollPane。
https://stackoverflow.com/questions/7400918
复制相似问题