Java 如何在while循环中暂停帧?

Java 如何在while循环中暂停帧?,java,user-interface,Java,User Interface,我想创建一个框架,该框架将在程序启动时启动。用户应输入正确的凭据,否则窗口将再次询问正确的凭据。我把它放在一个while循环中。但是当我运行程序的时候,画面搞乱了。它不断地在表单周围选择不同的元素。我该怎么办 boolean isDone = false; while (!isDone) { ap.launchFrame (); if (ap.isAuth) { isCorrect = true; brea

我想创建一个框架,该框架将在程序启动时启动。用户应输入正确的凭据,否则窗口将再次询问正确的凭据。我把它放在一个while循环中。但是当我运行程序的时候,画面搞乱了。它不断地在表单周围选择不同的元素。我该怎么办

boolean isDone = false;

    while (!isDone) {
        ap.launchFrame ();
        if (ap.isAuth) {
            isCorrect = true;
            break;
        }
    }

ap类上的isAuth是一个布尔变量。当用户输入正确的凭据时,返回true。

可能是不确定循环给您带来了问题。确保只启动一次框架

试一试


您在哪里调用登录代码?为什么要使用循环,而不是根据登录结果切换内容登录表单或成功面板?顺便说一句,您使用的是哪种ui框架?由于swing GUI是如何工作的,这可能不可能这么容易做到。我鼓励您阅读更多关于启动屏幕、SwingWorker和swing中的线程的内容。
boolean isFrameLaunched = false;
boolean isDone = false;

while (!isDone) {
    if (!isFrameLaunched) {
        ap.launchFrame ();
        isFrameLaunched = true;
    }
    if (ap.isAuth) {
        isCorrect = true;
        break;
    }
}