создайте (ложный) setVisible и расположите (), не может убить процесс

У меня есть следующий сценарий (2 класса)

Frame1 (следующая кнопка)
Frame2 (предыдущая кнопка, закройте кнопку)
Frame1 открыт (случай 1)
пойти Frame1 - Frame2 ( frame1.setVisible (ложный) и frame2.setVisible (верный) ) (случай 2)
пойти Frame2 - Frame1 ( frame2.setVisible (ложный) и frame1.setVisible (верный) ) (случай 3)
снова Frame1 - Frame2 ( frame1.setVisible (ложный) и frame2.setVisible (верный) ) (случай 4)

в вышеупомянутом процессе 4 случая (Если программа, открытая тогда отмеченный как случай)
теперь во время завершения от Frame2, я использую frame1.dispose() и frame2.dispose()
здесь случаи только 2 раз расположены.
Но проблема: все еще 2 случая не расположены.
Но только только один процесс - живое. Как это возможно?
В вышеупомянутом сценарии я должен расположить все случаи, чтобы убить процесс?

1
nl ja de
Если программа, открытая тогда отмеченный как случай. neway я отредактировал спасибо!!!
добавлено автор Surendra Jnawali, источник
что вы подразумеваете под "случаями"? how' d вы знаете, "что все еще 2 случая не расположены"? Если возможно улучшите вопрос, поскольку все еще трудно следовать.
добавлено автор Czar Pino, источник
Хм. Просто попробованный и это действительно didn' t работа! Интересный. It' d быть интересным исследовать это, но если you' ре, идущее с этим внедрением тогда you' ре, вероятно, собирающееся заканчиваться в большей проблеме. Возьмите некоторые предложения, например, использующий CardLayout или JDialog вместо JFrame . Серьезно, избегайте многократного JFrames.
добавлено автор Czar Pino, источник

2 ответы

  • значение по умолчанию DefaultCloseOperation for JFrame is HIDE_ON_CLOSE

  • должен установить DefautlCloseOperation для JFrame с собственным значением (EXIT_ON_CLOSE)

  • не создает секунду или больше JFrames, использовать CardLayout вместо этого

  • использование JDialog вместо этого другой JFrame, в случае, что есть настоящие причины

1
добавлено
да ваша идея приветствуется... спасибо.. но развитие закончено, и я должен убить процесс правильно многократного случая....
добавлено автор Surendra Jnawali, источник

You consider to do like this if you do not want to go with CardLayout

Создайте конструктора в Frame1 с аргументом Frame2 как показано ниже и храните объект frame2 в местном масштабе.

public class Frame1{
    private Frame2 frame2Obj;
    public Frame1(Frame2 frame1Obj){
        this.frame2Obj = frame2Obj;
    }
    private openFrame1(){
         frame2Obj.setVisible(true);
         this.setVisible(false);
    }
}

Так же создайте конструктора в Frame2 с аргументом Frame1 как показано ниже и храните объект frame1 в местном масштабе.

public class Frame2{
    private Frame1 frame1Obj;
    public Frame2(Frame1 frame1Obj){
        this.frame1Obj = frame1Obj;
    }
    private openFrame1(){
         frame1Obj.setVisible(true);
         this.setVisible(false);
    }
}

Теперь у вас будет только два случая.

1
добавлено
не моя та проблема... System.exit (0) заканчивают целую систему
добавлено автор Surendra Jnawali, источник
pro.jvm
pro.jvm
3 503 участник(ов)

Сообщество разработчиков Java Scala Kotlin Groovy Clojure Чат для нач-их: @javastart Наш сайт: projvm.com projvm.ru Наш канал: @proJVM Вакансии: @jvmjobs Конфы: @jvmconf

Java & Co
Java & Co
2 370 участник(ов)

Можно обсуждать с матом и без всё, что касается жабы, вплоть до холиваров. НЕ ИМЕЕТ ОТНОШЕНИЯ К САЙТУ JAVARUSH.RU ПРАВИЛА - https://t.me/javarush/75723 Вакансии сюда - https://telegram.me/joinchat/B7IzvUCnfo6d8t3yIxKguQ По вопросам - @thedude

learn.java
learn.java
1 888 участник(ов)

Чат для начинающих и не только Статистика: https://combot.org/chat/-1001083535868 Основной чат - @jvmchat

Java Underground
Java Underground
169 участник(ов)

https://vk.com/javatutorial

Javanese Questions
Javanese Questions
109 участник(ов)

Чат предназначен для обмена знаниями строго в формате в вопрос-ответ. Тема — Java, Kotlin и Android. Вопрос должен быть предварительно прогуглен, понятно и грамотно сформулирован, помечен хэштегами. Ответ — тем более. Куски кода размером в несколько строк можно писать прямо здесь, для больших кусков кода стоит использовать http://gist.github.com/, http://pastebin.com/, https://codeshare.io/ или любой аналогичный сервис. В некоторых случаях можно прикреплять скриншоты. Стикеры и гифки запрещены. Дополнять и уточнять вопросы и ответы — редактированием исходного сообщения. Обсуждения должны приводить к редактированию вопроса/ответа и удаляться. По хештегам можно искать существующие вопросы и овтеты: #вопрос #ответ #git #generics #java #server #awt #javafx #swing #kotlin #anko #tornadofx #ktor #android #recyclerView #performance #arch #network #permissions #storage #async