在java中使用swinggui

在java中使用swinggui,java,swing,user-interface,Java,Swing,User Interface,关于Java swing GUI,我有几个问题,仅供参考这是我第一次使用GUI,所以我对这方面的知识不太了解 我的代码基本上是一个带有name和number属性的用户类,我计划将其用作登录页面。因此,我所做的是为这个用户类创建一个新的GUI类,它完全独立于用户类(就像一个类用于函数,另一个用于GUI)。这是错的吗?如中所示,我应该将用户方法和GUI放在一个类中吗 我有2个GUI,一个欢迎GUI和一个登录GUI。我如何确保一个连接到下一个?我试图使欢迎框架不可见(登录框架在自己的GUI中可见),

关于Java swing GUI,我有几个问题,仅供参考这是我第一次使用GUI,所以我对这方面的知识不太了解

  • 我的代码基本上是一个带有name和number属性的用户类,我计划将其用作登录页面。因此,我所做的是为这个用户类创建一个新的GUI类,它完全独立于用户类(就像一个类用于函数,另一个用于GUI)。这是错的吗?如中所示,我应该将用户方法和GUI放在一个类中吗

  • 我有2个GUI,一个欢迎GUI和一个登录GUI。我如何确保一个连接到下一个?我试图使欢迎框架不可见(登录框架在自己的GUI中可见),但没有成功

  • 登录GUI与上面的类似,并且具有
    frame.setVisible(true)

    1-我有一个代码,基本上是一个带有名称和编号的用户类 我计划用作登录页面的属性,所以我所做的是 为此用户类创建一个新的GUI类,该类与 用户类(一个类用于函数,另一个类用于GUI) 这是错的吗?如中所示,我应该放置用户方法和 GUI在一个类中

    UI开发中的一个常见概念是“模型-视图-控制器”(暂时不要担心控制器)。这意味着您的“数据”是以某种方式建模的(即
    User
    ),您的“视图”(UI)采用该模型并决定如何向用户显示该模型。它还帮助管理用户和模型之间的交互

    因此,是的,保持“数据”独立于“ui”是正确的策略。请始终记住,UI负责确定数据的“格式”,模型只是以某种有意义的方式管理数据的一种手段

    2-我有2个GUI,一个欢迎GUI和一个登录GUI,如何确保 一条通向下一条?我试图使欢迎画面不可见(画面) 登录框架在它自己的GUI中是可见的),但这不起作用

    这在概念上有点宽泛。通常,我们可能建议使用
    CardLayout
    在视图之间“翻转”,但这会假定您希望在某个时候重新访问这些视图

    从更“抽象”的角度来看,您可以使用某种“控制器”根据当前状态来决定应该发生什么

    这意味着,如果没有显示“欢迎”,您将显示“欢迎”视图。当用户准备超越它时,“欢迎”将通知“控制器”,然后控制器将决定下一步做什么

    例如,您以前是否保存过凭据?如果是这样,您可以自动登录用户并继续,否则您需要显示“登录”视图以获取凭据并允许控制器对用户进行身份验证

    这将使您进入“观察者模式”(又名侦听器),在该模式中,当某个状态发生更改时,利益相关方会注册对已通知的信息的兴趣

    当试图设计此类系统时,总是要问自己一些基本问题

    • 我需要向程序的其他部分暴露多少信息?ie Your's welcome view不需要了解登录视图,因为它可以对登录视图执行超出其职责范围的操作
    • 要改变它的任何一部分,我需要付出多大的努力或工作量?!因此,您得到了欢迎屏幕来打开登录屏幕,但是现在您想要添加“自动登录”,您需要做多少工作才能使其工作?如果welcome和login视图彼此独立并通过其他机制进行控制,会更容易吗

    通过在代码的正确位置调用正确的方法,查看简单实现示例

    。您不应该认为GUI代码与任何其他代码有任何不同,“一些问题”应该在几个问题线程中分割。跳过Netbeans部分。