Ponowne użycie JDIalog

0

Dopiero zaczynam swoją przygodę z Java i napotkałem na taki problem.
Załóżmy, że mam button, który otwiera nowy dialog: NewJDialog jDialog = new NewJDialog(this, true); Na nowo otwartym okienku mam przycisk, który ukrywa dialog: this.setVisible(false);
Ponowne naciśnięcie przycisku otwarcia dialogu powoduje utworzenie nowego okna - kolejnego. Jak zrobić aby przy otwieraniu było sprawdzane czy wcześniej nie został stworzony dialog i pokazywał ten ukryty?
Problem zapewne banalny dla większości z was.
Z góry dzięki za pomoc.

0

operując jednym oknem. Po prostu tworząc sobie od razu w klasie nowe okno a później po naciśnięciu guzika wywołując je. Pod powiem że będzie ci wtedy potrzebna jeszcze dodatkowa zmienna boolean.

0

Mozna tez tak, jDialog jest polem w klasie, a w obsłudze klawisza sprawdasz czy jDialog jest null

    ....
    private NewJDialog jDialog=null;
    .....
    if(jDialog==null)
        jDialog=new NewJDialog(this,true);
    else
        jDialog.setVisible(true);
0

Dzięki za odpowiedzi. Obydwa pomysły zadziałały.

0

A co, jeśli za każdym razem obiekt JDialog jest usuwany (dispose)?
Jak wtedy sprawdzić, czy okno JDialog jest aktualnie otwarte, w tym kodzie:

    private void mbZarzadzajActionPerformed(java.awt.event.ActionEvent evt) {                                            

        JFrame mainFrame = PlenApp.getApplication().getMainFrame();
        ZarzadzanieUserami zu = new ZarzadzanieUserami(mainFrame, false);
        zu.setVisible(true);
    }    

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.