gpt4 book ai didi

java - JFrame - 在一个 JFrame 中使用多个面板是一种好的做法吗?

转载 作者:行者123 更新时间:2023-12-01 22:51:08 26 4
gpt4 key购买 nike

现在,我正在制作一些只有不到 9 页(或面板)的报告生成器。我在想如果我只将这些包含在一个框架内会怎样。我只需在需要时调用并处置面板实例即可。这是为了将 db Connection 等内容包含到一个 JFrame 中,而不是每次都调用 .setVisible(true).setVisible(false)切换页面。这也是当用户单击任何页面上的关闭按钮时,整个软件都会关闭,而无需调用多个 .dispose() 方法。

我想知道这是否可行,或者是否会使整个开发过程变得复杂。

现在我的 MainFrame 类(即框架类)中有这个。

public MainFrame(){
setContentPane(new LoginScreen(this));
this.setVisible(true);
}

据我所知,setContentPane() 可以调用另一个 JPanel 来向用户显示。但是,您可以处置面板吗?因为据我所知, .dispose() 是为 JFrame 保留的。

最佳答案

可以将多个 JPanel 对象放入一个 JFrame 对象中。但是,您应该添加删除这些面板,而不是处置它们。

但是,根据您的情况,我认为最好的选择是 CardLayout 。你可以用它做你需要做的一切。请勿手动添加删除面板。

有一个CardLayout的官方示例:

参见http://docs.oracle.com/javase/tutorial/uiswing/layout/card.html .

关于java - JFrame - 在一个 JFrame 中使用多个面板是一种好的做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24721702/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com