JDialog ohne das rote x

Zodac

Grünschnabel
Hallo,

ich hab ein kleines Problem mit einem JDialog. Ich würde gerne das rote x zum schliessen ausblenden. Bisher habe ich nur die Möglichkeit gefunden die ganze Titelzeile mit JDialog.setUndecorated(true); auszublenden, allerdings würde ich den Titel gerne behalten.

Hat jemand eine Ahnung wie ich das unter Beibehaltung des JDialogs hinbekommen kann?

Vielen Dank und viele Grüße
Lars
 
Dass es verschwindet, damit kann ich nicht dienen, dafür aber damit:
Code:
/* Sorgt dafür, dass der kleine schließen-Button links oben (x) keinen Effekt
    hat */
    <derDialog>.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
 
Das kann mein X schon, leider hat das den Tester vom Kunden aber nicht zufrieden gestellt. Daher bräuchte ich eine Lösung ohne das X :(
 
Ich glaube um so etwas ähnliches ging es hier vor kurzer Zeit auch.
Ich befürchte dass du höchstens das Aussehen der Knöpfe verändern kannst.
Ansonsten muss du mal schaun ob das in SWT möglich ist.

Die ganze Sache ist natürlich nicht so einfach, da Java ja Platformunabhängig ist und man deshalb nicht viel Kontrolle über das darunterliegende System hat.

Ansonsten musst du warte ob dir ein Mod weiterhelfen kann.
 
Hallo,

ich bin zwar kein Mod, aber ich sage trotzdem was dazu. :)

Mit Swing, kann man nicht die Titelleiste bearbeiten. Mit SWT kann man sich, wenn ich mich richtig erinnere, einzelne Buttons abschalten/ausblenden. Kann dazu nichts genaues sagen, das es schon längere Zeit hier ist, dass ich mich damit beschäftigt hab.

Du könntest vielleicht eine eigene Titelleiste bauen. Also du setzt die Fenster undecorated und malst dir selbst eine Titelleiste.

MFG

zEriX
 
Hallo ich bin's ...

also bei SWT geht es definitiv eine Shell ohne Close Button zu erzeugen.

Code:
... = new Shell(parent, SWT.TITLE);

allerdings ist dann die Größe der Shell fix.
Aber das würde man sicher auch noch irgendwie in den Griff bekommen.
 
Moin!
Ob die Titelzeile bearbeitbar ist, hängt davon ab, welches Look-and-Feel genutzt wird.
Normalerweise wird das Systemabhängige genutzt. Da ist es leider nicht möglich.
Aber das Metal-LnF bietet durchaus die Möglichkeit für Zugriffe. Sei es, um das Titelpane explizit zu setzen, oder um im Nachhinein (wenn auch ein wenig umständlich) den "Schließen"-Button zu entfernen..

*grüssle*
MeinerEiner
 
Leider ist die Application in Swing aufgebaut und der JDialog schon vorhanden, daher kann ich das nicht mal eben auf SWT umstellen. Das look&feel sollte schon systemabhängig sein, da die Anwendung unter Windows und Mac genutzt wird.
 
Zurück