Professionelle Look and Feels

Status
Nicht offen für weitere Antworten.

DEvent

Bekanntes Mitglied
Hallo,
kann jemand professionelle Look&Feels für Swing Anwendungen empfehlen? Alle, die ich bis jetzt gesehen habe, sehen nicht so gut aus.

Am liebsten hätte ich ein L&F das so aussieht wie Oxygen. Wenn jemand so ein L&F gefunden hat, wäre ich sehr dankbar. Es kann auch gerne eins sein, das nicht kostenlos ist.

Danke.
 

Landei

Top Contributor
Welche hast du denn schon gesehen? Ich nehme normalerwiese das "eingebaute" Substance L&F und bin ganz zufrieden damit. Ansonsten halt der Link meines Vorredners...
 

DEvent

Bekanntes Mitglied
Von den ganzen habe ich nur Synthetica, JGoodies und JTattoo ausprobiert. Von denen sieht JTattoo am besten aus, aber mir gefallen die alle nicht so wirklich. Ehrlich gesagt gaefellt mir das Metal L&F von Swing von den ganzen L&Fs am besten.

Aber verglichen mit z.B. Oxygen sehen die Java L&F einfach nur traurig aus. Deswegen habe ich versucht mein neuestes Projekt auch mit QTJambi zu bauen, aber da wird es auch kompliziert mit den ganzen Abhängigkeiten.

Man sollte Java auch endlich beibringen die Fonts und Farbschema des Systems zu respektieren. Fuer Windows sollte es fuer Sun kein grosses Problem sein. Fuer Linux gibt es ja das OpenJRE/OpenJDK Projekt, dort sollten die Devs. Java beibringen die Konfiguration von Gnome/KDE zu respektieren. Alle Gnome und KDE Applikationen koennen das, sollte also nicht so schwierig sein?

Gibt es so ein Projekt/Bibliothek schon? Ich wuerde mir das so vorstellen:
Java:
String system = System.getProperty("os.name");
if (system.equals("Linux")) {
  properties = getGnome/KDEProperties();
} else if (system.equals("Windows")) {
  properties = getWindowsProperties();
} else if (system.equals("*BSD")) {
  properties = getGnome/KDEProperties();
} // usw.

  
  setColors(properties.get("colors")); // set the L&F colors
  setFonts(properties.get("fonts")); // set the L&F fonts
}

Ich denke das ist mein grösstes Problem. Das L&F ist nicht so wichtig, wichtiger sind aber die Schrift- und Farbeinstellungen des System einzuhalten. Wenn ich mir die Java Anwendungen so anschaue, dann ist alles falsch. Am deutlichsten ist der Unterschied in der Schrift: Falsche Schriftart, falsche Schriftgröße (zu klein) und falscher Schriftstil (in den Buttons hat Java fetten Schriftstil, alle anderen Programme haben normalen Schriftstil). Dann sind die Buttons alle Grau, die von Java Metall-Blau.
 

KrokoDiehl

Top Contributor
Gut, hier kann man sicher eine lange Diskussion vom Zaun brechen, aber so wie ich Java verstehe, ist es gerade das Ziel, plattformunabhängig zu sein und so wenig vom System anzunehmen, wie möglich.
Wir entwickeln in der Firma z.B. eine Anwendung, die auf Windows und Linux gleich aussehen soll. Die Einbeziehung von Systemeinstellungen ist hier sogar unerwünscht.
 

DEvent

Bekanntes Mitglied
Gut, hier kann man sicher eine lange Diskussion vom Zaun brechen, aber so wie ich Java verstehe, ist es gerade das Ziel, plattformunabhängig zu sein und so wenig vom System anzunehmen, wie möglich.
Wir entwickeln in der Firma z.B. eine Anwendung, die auf Windows und Linux gleich aussehen soll. Die Einbeziehung von Systemeinstellungen ist hier sogar unerwünscht.

Das ist ein Argument, aber wie willst du deinem Kunden beibringen die Schriftgröße deiner Java Anwendung anzupassen, weil sie eben viel zu klein ist? Z.B. bei mir ist die Schriftgröße meiner Java Anwendungen min. 4 Schriftgrade kleiner als alle anderen Anwendungen. Ich muss mich anstrengen, um die Schrift zu lesen. Das auch der Schrifttyp ein total anderer ist, fördert das Lesen der Schrift auch nicht.

Nun muss ich also deiner Ansicht nach für alle Java Anwendungen einzeln die Schriftgröße anpassen oder irgendwelche Dateien in /usr/lib/jvm anpassen? Wäre es nicht wesentlich besser, wenn Java Anwendungen die Schrift des Systems automatisch verwenden würden?

PS: Ich denke wir können schon annehmen, dass das System Schriften benutzt, um Text anzuzeigen. ;)
 

L-ectron-X

Gesperrter Benutzer
Ich finde, dass sich ein Programm nahtlos ins Betriebssystem einfügen sollte. Daher verwende ich fast ausschließlich das System-LAF. Die Anwender fühlen sich damit eher wie "zuhause".
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben