我有一个 JFrame,它显示两个 JSplitPanes(一个在另一个里面)。
由于某种原因,分隔线的位置不一致。
我的意思是有时它显示在我设置它的正确位置,而其他时候则没有。当位置错误时,两个拆分面板都是错误的。这是我用于 JSplitPanes 的代码:
JPanel javaPanel = core.getComponentPanel(2);
JSplitPane splitA = new JSplitPane(JSplitPane.VERTICAL_SPLIT,
javaPanel.getComponent(0), javaPanel.getComponent(1));
double pos = (screenDim.getHeight() * 72) / 100;
splitA.setDividerLocation((int) pos);
JSplitPane mainSplitP = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,
new JScrollPane(getCoreComponents()), splitA);
return mainSplitP;
在 JFrame 上,我有一个带有 CardLayout 的 JPanel。要添加 mainSplitP,我使用以下方法:
private void setFrameContent(Container content, String title) {
appContent.add(content, title);
CardLayout cl = (CardLayout) (appContent.getLayout());
cl.show(appContent, title);
appFrame.pack();
}
什么可能导致这种不一致?