JDialog, którego nie da się zamknąć

0

Mam JDialog i chciałbym, zeby przycisk "zamknij" był szary (żeby nie dało się go użyć). Jak to zrobić?

0

Dokumentacja klasy JDialog jest właściwym adresatem pytania.

0

Szukałem, ale nie znalazłem.

0

Nie jestem pewien co to jest przycisk "zamknij", zakładam że "krzyżyk" u góry okna.

import javax.swing.*;
import java.awt.event.*;

public class C extends JFrame implements ActionListener
{
    private JDialog dialog=null;
    public static void main(String[] args)
    {
        new C();
    }
    //------------------------
    public C()
    {
        JButton b=new JButton("Testowanie");
        b.addActionListener(this);
        add(b);
        pack();
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
        dialog=new JDialog(this,"Test",true);
        b=new JButton(" W JDialog");
        b.addActionListener(this);
        b.setEnabled(false);
        dialog.add(b);
        dialog.pack();
        dialog.setLocationRelativeTo(null);
        dialog.setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE); // ten wiersz jest istotny

    }
    //------------------------
    public void actionPerformed(ActionEvent ae)
    {
        dialog.setVisible(true);
    }
}

żeby się dało z tego wyjść, to trzeba do dialogu dodać WindowListenera
pozdrawiam
P.S. szukałeś chyba z zamkniętymi oczyma

0

O DO_NOTHING_ON_CLOSE to ja wiem =) Mi chodziło o to, żeby krzyżyka nie było, lub był szary ;)

0

Takie sztuczki to tylko w Erze. Możesz usunąć krzyżyk (niestety razem z paskiem tytułowym) zastępując JDialog klasą JWindow.

0

Szkoda, bo przecież Windows udostępnia taką możliwość i inne systemy chyba też...

0

Stare, ale może komuś się przyda.

okno.setResizable(false); //nie da się zmienić rozmiaru okienka, no i X jest szary

1 użytkowników online, w tym zalogowanych: 0, gości: 1