当前位置: 首页 > 知识库问答 >
问题:

如何从JPanel类访问JFrame组件?

夏星阑
2023-03-14

我正在做一个GUI任务,我遇到了一个我无法解决的问题。我有一个带有多个JPanels的JFrame,其中一个JPanels包含一个带有多个JPanels的CardLayout。由于我们有更多的人在这个项目中工作,我们决定为CardLayout中的每个面板创建一个单独的类(扩展JPanel)。

问题是从JPanel类访问JFrame的组件。

举个例子,我在JFrame中的某个地方有一个JLabel,它充当状态栏,当SaleMain面板上按下按钮时,我希望更改状态栏的文本(SaleMain类扩展了JPanel,包含在CardLayout中)。

希望我说得尽可能清楚,提前谢谢你们对我的帮助:)

共有1个答案

常献
2023-03-14

模型/视图/控制器模式(MVC)对于创建GUI非常有用。通过将模型与视图分离,您可以一次专注于GUI的一部分。

为GUI创建一个模型,该模型包含要在GUI上显示的信息。

我在JFrame中的某个地方有一个JLabel,它用作状态栏,我想在SaleMain面板上按下按钮时更改状态栏的文本

 类似资料:
  • 问题内容: 当我需要时会出现一个新的JPanel(超过了时间限制或用户按下了“提交”按钮)。但是几秒钟后,旧的JPanel的某些元素就会与新的JPanel的组件一起出现。我不明白为什么会这样。 我以为是因为我必须对其他线程更新窗口。但是第一个线程只需将旧面板添加一次(因此,应该完成)。在第二个线程中,我有一个中断的循环(因此,它也应该完成)。 这是我的代码: 问题答案: 从容器(框架)中删除组件(

  • 你好,我正在制作一个简单的桌面应用程序,我正在设计用户界面。我正在使用NetBeans快速设计它。我确实看了很多网站和博客来寻找答案,但是找不到正确的答案。我是UI设计新手。您的答复/建议将不胜感激。 问题是: 我在应用程序中有一个JFrame。这个Jframe有几个JPanel,当用户登录应用程序时,这些JPanel被设置为可见/不可见状态。其中两个面板默认设置为不可见状态(我使用了将它们设置为

  • 我已经创建了JavaSwing应用程序,其中包含一个jDesktoppane,在它里面我正在从主框架(JFrame)中的切换按钮加载/调用一些内部框架。我使用了jButton组来切换所有的按钮,所以当按下一个按钮时,只有一个帧会切换。 由于我使用了切换按钮,即使我配置了JInternalFrame,相关切换按钮仍将处于按下模式(已选择)。我尝试了很多方法,但无法将切换按钮的状态从选中更改为未选中。

  • 我有一个带有登录名(JPanel)的JFrame,可以从菜单栏中选择。菜单栏还根据用户角色显示选项。当用户第一次登录创建的JFrame实例时,当我在菜单栏上选择login并在new JFrame上实例化时,我的问题就出现了,因为我显然打开了两个JFrame,我找不到从JPanel隐藏或关闭之前JFrame的方法。在实例化新JFrame或任何其他可能的解决方案之前,有没有办法隐藏/处理所有打开的窗口

  • 不久前,我通过教程和视频开始学习Java,在了解了一些东西(按钮、布局、音频和其他一些东西的工作原理)之后,我现在的目标之一是创建一个小型交互式游戏。 我在主课上写了相当大一部分的游戏,效果很好,但过了一段时间就变得一团糟了。 所以我决定从一开始就尝试另一次,对游戏的每个部分使用不同的类,让代码看起来更清晰易懂。 但我从一开始就有一个问题,在论坛上搜索了几个小时的教程和答案,但没有找到一个准确的答