# Gui designen, basierend auf eigenem Interface



## isaakwit (18. Feb 2016)

Hallo liebes Java Forum!

Ich designe gerade die GUI für ein großes Projekt, und im Prozess des Testens und Probierens habe ich mich dafür entschieden Java zu verwenden, auch um später Algorithmen im Backend implementieren zu können. 

Es geht, vereinfacht gesagt, um einen virtuellen Desktop, wo kleine Applikationen laufen sollen, mit einem eigenen Fenstermanagement und einem Dateiverwaltungssystem.

Meine Frage ist jetzt: welche Werkzeuge nehme ich am besten, um die GUI umzusetzen - welche ein völlig eigenständiges Konzept an Bedienung und Aussehen benutzt. Also keine Lösung, mit der ausschließlich klassische Windows-, Mac-, oder Linux-GUIs umgesetzt werden, kommt für mich in Frage.

Bin für jeden Input dankbar!

Lg

Isaak


----------



## Joose (18. Feb 2016)

isaakwit hat gesagt.:


> Es geht, vereinfacht gesagt, um einen virtuellen Desktop, wo kleine Applikationen laufen sollen, mit einem eigenen Fenstermanagement und einem Dateiverwaltungssystem.



Klingt für mich nach einem eigenen OS im OS 
Ein Desktop ist da nichts anderes als ein Panel auf welchem Elemente dargestellt werden.
Und für das "Fenstermanagement" kann man einfach Frames in Frames verwenden: https://docs.oracle.com/javase/tutorial/uiswing/components/internalframe.html

Keine Ahnung was du dir unter eigenen Dateiverwaltungssystem vorstellst.


----------



## isaakwit (18. Feb 2016)

Ich wollt es nicht sagen, aber es soll mal ein eigenes OS werden... aber soweit mal wird hier nur getestet. 

Auf jeden Fall geht es mir ja darum, dass die Fenster nicht so aussehen sollen wie bisher vorgegeben (zb. dass die titelleiste oben ist, die dicke von borders vordefiniert sind, etc) , sondern dass ich alles von grund auf neu aufbauen sollte. 

Meine Überlegung war, dass ich ein System schreibe, wo ich einfach rechtecke zeichne, die ich als Objekte mit Attrituben verpacke, und die grafischen Elemente, die ich als Grafiken abspeichere werden am Anfang in Variablen geladen, die dann von den Fenstern als zb. borders oder als titleBar benutzt werden. Oder hab ich da gerade genau das beschrieben, dass die internal Frames machen? 

Kann ich die internal Frames vielleicht tatsächlich so anpassen, dass es für meine Zwecke passt?


----------



## Joose (18. Feb 2016)

isaakwit hat gesagt.:


> Ich wollt es nicht sagen, aber es soll mal ein eigenes OS werden... aber soweit mal wird hier nur getestet.



Ich will dir nicht die Illusion nehmen, aber ein OS zu schreiben ist nicht mal eben eine Java Anwendung.
Auch finde ich ist Java nicht richtige Sprache dafür (das es aber gehen würde zeigt dieses Beispiel: https://de.wikipedia.org/wiki/JavaOS)

Und bevor man bei dem OS in irgendeiner weise daran denkt eine hübsches"revolutionäres" UI zu designen sollte man sich um wichtigere Details kümmern 
Sicherheit, Dateiverwaltung, Speicherverwaltung, Prozesse, Berechtigungen, ....



isaakwit hat gesagt.:


> jeden Fall geht es mir ja darum, dass die Fenster nicht so aussehen sollen wie bisher vorgegeben (zb. dass die titelleiste oben ist, die dicke von borders vordefiniert sind, etc) , sondern dass ich alles von grund auf neu aufbauen sollte.


Was liegt dir an den aktuellen "gewöhlichen" Aufbaue nicht? Warum willst du es ändern? Wird dadurch der Umstieg auf dein OS nicht erschwert (User gewöhnen sich nur ungern um).



isaakwit hat gesagt.:


> Meine Überlegung war, dass ich ein System schreibe, wo ich einfach rechtecke zeichne, die ich als Objekte mit Attrituben verpacke, und die grafischen Elemente, die ich als Grafiken abspeichere werden am Anfang in Variablen geladen, die dann von den Fenstern als zb. borders oder als titleBar benutzt werden.


Worin besteht der Unterschied zu Swing? (abgesehen vom Rechtecke zeichnen)
Es werden hier und da Objekte mit Attribute erstellt. Das Objekt hat wo vordefiniert wie es für gewöhnlich auszuschauen hat. Ich sehe da keinen großen Unterschied. Bei deiner Variante wird mir noch nicht klar worin der Vorteil besteht oder was dadurch anders/besser/einfacher wird?



isaakwit hat gesagt.:


> Oder hab ich da gerade genau das beschrieben, dass die internal Frames machen? Kann ich die internal Frames vielleicht tatsächlich so anpassen, dass es für meine Zwecke passt?


InternalFrames ist nichts anderes als ein Frame im Frame. Ich hab dir schon das Stichwort InternalFrame gegeben, jetzt wäre es deine Aufgabe zu recherchieren ob es für deine Bedürfnisse (die du selber ja am besten kennst) passt.
Generell kann man mit Swing sehr viel am Design ändern, siehe: https://www.google.at/search?q=java...hQKHZOoClMQ_AUIBygB&biw=1920&bih=1103#imgrc=_
Ob du aber den Aufbau des JFrames anpassen kannst weiß ich nicht.


----------

