【问题标题】:Displaying JFrames inside JSplitPane Java在 JSplitPane Java 中显示 JFrame
【发布时间】:2012-02-19 17:21:32
【问题描述】:

我正在使用JSplitPane 制作GUI,我想在JSplitPane 的左侧显示一个JFrame,在JSplitPane 的右侧显示另一个JFrame。 另一个JFrame 的名称是Minimize.javaDiagram.java。我的问题是如何调用这些并将其显示在JSplitPane 的左侧和右侧?这篇文章的更新,我将我的 JFrame 转换为 JPanel 并成功显示,但现在的问题是它没有执行功能/方法。

这是我的主窗体代码。

        public LogicGates()
        {
            Minimize mi = new Minimize();

             //mi.setVisible(true);
            JLabel iExp = new JLabel("Inputted Expression: ");
            p.add(iExp);
            j1= new JLabel("");
            j1.setVisible(false);
            p.add(j1);


            JScrollPane aaScrollPane = new JScrollPane(aa);

//here is my problem,when i run the code it displays the label and jcombobox but didn't perform the function
            gatessplit = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, mi, aaScrollPane);
            gatessplit.setOneTouchExpandable(true);
            gatessplit.setDividerLocation(300);

            //Provide minimum sizes for the two components in the split pane.
            Dimension minimumSize = new Dimension(150, 80);
            //frame.setMinimumSize(minimumSize);
            aaScrollPane.setMinimumSize(minimumSize);

            //Provide a preferred size for the split pane.
            gatessplit.setPreferredSize(new Dimension(900, 500));


        }

【问题讨论】:

  • 为什么是 JFrame?那些不是顶级组件吗?小组不是更合适吗?
  • 先生,我尝试将其转换为 Jpanel,但有些组件不支持,因此我使用了 Jframe。我的问题有什么解决办法吗?
  • “Jpanel 但有些组件不支持” 也许你需要一个JDesktopPaneJInternalFrame 实例。
  • 我可以在splitpane先生里面插入内部框架吗?
  • 这毫无意义。 JFrame 必须单独放置。时期。如果“有些组件不支持...”,那么您正在修复错误的东西。告诉我们您的意思是什么组件,然后使用 JPanels。

标签: java swing jframe jpanel jsplitpane


【解决方案1】:

您不能在此处使用JPanelsJFrame 上的Layout Manager 结合使用吗?

这将允许您创建一个JFrame,然后为其添加一个布局,该布局由左右两个部分组成。然后,您可以在左右添加一个JPanel,并为每个JPanel 添加组件。

JPanel 教程http://docs.oracle.com/javase/tutorial/uiswing/components/panel.html

布局教程http://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html

【讨论】:

  • Minimize.java,LogicGates.java,Diagram.java三个文件都扩展了JFrame。我使用 JFrame,因为 JPanel 中不支持某些组件。
  • @Alvin:JFrame 类是您创建的类吗?如果是这样,重新编写它们以生成 JPanel,而不是 JFrame。
  • @AlvinPulido:您的意思是 JPanel 不支持哪些组件?
猜你喜欢
  • 2011-07-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-10
  • 1970-01-01
  • 2017-07-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多