Was soll ich benutzen? Java2D, Java3D, Swing, AWT??

Status
Nicht offen für weitere Antworten.

mdames

Mitglied
Hi Leute,

habe mir in den Kopf gesetzt, kein normales im Fenster Programm zu schreiben,
also das sich ein Fenster mit Menüleiste und so öffnet. Applet ist auch nich drin!

Ich möchte eher nen schönen schwarzen Grafikbildschirm (so wie bei allen Spielen),
in dem ich dann munter Menüs malen kann und ne schöne Maus bauen kann und
so weiter und so fort...
ich stoße halt auf versch. sachen wie awt und so, hab aber voll den Durchblick verloren
was ich dafür benutzen kann!
Wär nett, wenn mir jemand ne kleine Antwort schreiben könnte!

Thx, Martin.
 
B

Beni

Gast
AWT: Advanced Window Toolkit, zum erstellen von einfachen Buttons etc, wie man sie in jedem GUI-Programm findet.
Swing: Eine Weiterentwicklung von AWT, bestitz auch Sachen wie Tabellen und Bäume.
Java2D: Ein Teil des AWT's, kann verschiedene Sachen wie Bilder malen, transparente Flächen vereinen, uvm.
Java3D: Eine 3D-Engine die unter benutzung von OpenGL oder DirectX 3-dimensionale Sachen malt. Sehr aufwendig, und hat auch noch 1 oder 2 Bugs.
jogl: Alternative zu Java3D, eine Verbindung zwischen Java und OpenGL. Nur Basics (keine vorgefertigten Elemente wie Universe, geometrische Objekte, ...), dafür robust und stabil.

Lies dich mal durch ein paar Bücher hindurch, wenn du was GUI-mässiges machen willst, solltest Du die Sachen schon kennen...

mfg Beni
 

mdames

Mitglied
ja gut, habe ich ja schon,

finde aber nur beispiele und Erklärungen für Applets und einfache Windows Fenster...
aber das möcht ich ja nicht....
bin schon nen Monat am suchen, aber irgendwie bin ich der einzige der nur nen
schwarzen grafikbildschirm zum malen haben möchte!

Gruss Martin.
 
B

Beni

Gast
2D oder 3D ?

Man kann ein normales (J)Window nehmen, und es den ganzen Platz beanspruchen lassen:

Code:
Window window = ... // z.B. ein JFrame

window.setUndecorated ( true );  // natürlich nur bei einem Frame, Dialog...
window.setResizable ( false );
window.setVisible( true );
window.getGraphicsConfiguration().getDevice().setFullScreenWindow( window )

Siehe auch API.

Aber Zeichnen musst du immer noch selbst (schwarz...).

mfg Beni

[Edit: dank Roars nettem Kommentar :bae: ]
 

mdames

Mitglied
Ich denke mal 2D wird reichen... um nen paar Fensterchen zu malen...

Kann man mit dem AWT Fenster in Fenster proggen?

Gruss Martin!
 
B

Beni

Gast
Da musst du dir was eigenes zusammenschreiben.

Wenn ich das schreiben müsste würde ich ein Panel nehmen, ihm ein weiteres Panel hinzufügen, welches nur einen Teil des Platzes benötigt (dort werden die Components des Fensters hinzugefügt), und benützte den Rest des Originalpanels um Titel und Rand zu zeichnen.
 

L-ectron-X

Gesperrter Benutzer
Sag doch mal genau, was Du "malen" möchtest, dann finden wir sicher das richtige Element für Dich.
 
R

Roar

Gast
@Beni: AWT heisst Abstract Window Toolkit, und in deinem code muss es heissen: setFullscreenWindow(window)
*klugscheiss* :p :roll:

@mdames: Wieso benutzt du nicht swing? da kannstz du auch shcön zeichnen drin, und sieht hübscher aus und hat mehr komponenten als das AWT...
 

mdames

Mitglied
Ich möchte halt ein Java Spiel programmieren, mehr ein Statistik Spiel als ein Grafik Spiel....

Quasi als Projekt neben meinem Studium um meine Programmierkenntnisse und Erfahrungen
auszuweiten und zu vertiefen.

Ich wollte eigentlich ein textbasiertes Spiel schreiben, also auf der Text Console, aber ich bekomme
die Jcurses nicht ordentlich zum laufen... und es gibt so gut wie keine Doku um netz.
Und da denke ich nunmal über eine Alternative nach.

Es soll kein häßliches Applet sein, und kein Windows Fenster, denn mein Spiel soll vom Flair und Atmosphäre
kein Excel Style oder Windows Style haben.
Und daher möcht ich einen schönen schwarzen Grafikbildschirm, indem ich dann schöne Menü's malen kann
und mein eigenes Flair bauen kann!
Ich denke doch das das mit Java irgendwie geht, aber da das alles sehr komplex ist, blick ich da nicht mehr so richtig durch und vielleicht könnt Ihr mir da ja schneller weiterhelfen!

Danke,

gruss Martin.
 
R

Roar

Gast
also ich denke dass du da mit swing weit kommen kannst. du braucht deine komponenten nicht selbst zu zeichnen, aber sehen trotzdem hübsc haus und anders als die standart hässlcihen Wind Menüs. dazu gibts look and feels. hier: www.javootoo.com
 

Isaac

Bekanntes Mitglied
Ich bin da ja immer noch ein verfechter der OpenGL Implementierungen.

Z.b: http://www.jausoft.com/gl4java/

Damit habe ich selber schon ne Menge gemacht und das feine daran ist das es ne Menge Code gibt den man zum experimentieren nutzen kann.

Wenn du dir OpenGL installiert hast gehts du zu

http://nehe.gamedev.net/

und saugst dir die Lessons. Die laufen Out of the Box und man findet einen guten Einstieg. Und da OpenGL wie Java Plattformunabhängig ist bekommt man auch beim Portieren keine Probleme.
 

Reality

Top Contributor
Hi Roar!
Roar hat gesagt.:
also ich denke dass du da mit swing weit kommen kannst. du braucht deine komponenten nicht selbst zu zeichnen, aber sehen trotzdem hübsc haus und anders als die standart hässlcihen Wind Menüs. dazu gibts look and feels. hier: www.javootoo.com
wie kann ich die Look and Feels implementieren? Kann ich dir irgendwo als Package runterladen? Programmiere ich die dann genau gleich wie Swing?

Liebe Grüße
Reality
 

mdames

Mitglied
Kann man in Swing Fenstern auch 2D und 3D Objekte anzeigen lassen?

Wie kann man Swing Look&Feels selber machen?

Wenn ich ein Programm habe, das mit Swing arbeitet ist es dann ein einfaches
das Look & Feel auszutauschen? Auch RunTime?

Gruss Martin.
 
B

Beni

Gast
Look and Feel ist ein Teil von Swing.

Man schreibt im Code
Code:
  String className = ... // Der Name der Klasse, welche das Look and Feel implementiert.
  UIManager.setLookAndFeel( className );
und die Swing-Components werden entsprechend aussehen.
Guck mal hier
 

Isaac

Bekanntes Mitglied
mdames hat gesagt.:
Kann man in Swing Fenstern auch 2D und 3D Objekte anzeigen lassen?

Wie kann man Swing Look&Feels selber machen?

Wenn ich ein Programm habe, das mit Swing arbeitet ist es dann ein einfaches
das Look & Feel auszutauschen? Auch RunTime?

Gruss Martin.


Man kann alles machen was manwill. Auch 3D Objekte in Swing Fenstern anzeigen lassen

Man kann sich auch Look&Feels selber machen.

Man kann das Look&Feel jederzeit ändern. Man sammelt sich zur Laufzeit alle installierten Look&Feels und schreibt diese dynamisch in ein Menu. Somit hat man immer alle installierten Look&Feels zur Auswahl und kann jederzeit wechseln. Natürlich ohne das Programm zu verlassen.
 

Reality

Top Contributor
Hi Beni,
danke für die Antwort!
Ich habe mir jetzt ein Look and Feel runtergeladen, aber es ist nur eine Jar-Datei. Was soll ich damit machen?!

Liebe Grüße
Reality
 
B

Beni

Gast
Das JAR entweder mit einem URLClassLoader laden, oder in die ext-Ordner des JRE/SDK's werfen.
Und dann irgendwann "UIManager.setLookAndFeel" mit dem vollständigen (mit Package) Namen der Klasse, welche das Look and Feel implementiert, aufrufen.

Vielleicht hats eine Readme in dem JAR?
 
B

Beni

Gast
Das hier:

forum_015.png


Müsste vorhanden sein.
 

mdames

Mitglied
ah,

und da kann man dann alle möglichen Lib's als .jar reinwerfen, die dann javac automatisch findet?

Greeeeets
 
B

Beni

Gast
Jop.

Aber die Programme funktionieren dann natürlich nur auf den PC's, welche diese Libs ebenfalls im Ordner haben...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Jar File soll anderes benutzen Allgemeine Java-Themen 3
S Welchen Editor soll man für Graphische lösungen benutzen Allgemeine Java-Themen 2
J Welchen Packager soll ich verwenden. Allgemeine Java-Themen 7
O 2D-Grafik BioFarben-Programm soll auf Vollbild schalten Allgemeine Java-Themen 1
Noahscript Konto anlegen um JDK herunterzuladen? Was soll das? Allgemeine Java-Themen 1
E Angabe wie groß Array sein soll und in for-schleifen diesen Array füllen Allgemeine Java-Themen 3
J Message Box soll bei bestimmter Zeit angezeigt werden Allgemeine Java-Themen 19
M 4 Gewinnt KI macht nicht, was sie soll.. Allgemeine Java-Themen 1
J Überschriebene Funktion soll nicht die super Funktion aufrufen Allgemeine Java-Themen 4
S Methoden Liste soll Methode aus innerer Klasse aufrufen Allgemeine Java-Themen 4
perlenfischer1984 Lombok Builder soll andere Klasse bauen Allgemeine Java-Themen 4
C Eclipse einstellen, dass eine bestimmte JDK benutzt werden soll Allgemeine Java-Themen 3
RalleYTN Problem bei Schleife die durch einen 2D raum iterieren soll Allgemeine Java-Themen 1
R serielles Terminal mit Java: Cursor soll blinken Allgemeine Java-Themen 4
L Wie genau soll ein Klassendiagramm sein Allgemeine Java-Themen 4
I JPanel soll sich dem JFrame anpassen Allgemeine Java-Themen 1
S Bachelorarbeit , soll ich ? soll ich nicht? Allgemeine Java-Themen 23
L Klassen Konstruktor soll Objekt anderer Klasse erzeugen Allgemeine Java-Themen 2
H JFileChooser soll NUR Windows-Netzwerkumgebung anzeigen Allgemeine Java-Themen 2
I JTextArea soll nur drei Zeilen anzeigen Allgemeine Java-Themen 1
K Methode soll neue Buttons erstellen Allgemeine Java-Themen 5
J if else Anweisung macht nicht was es soll. Wieso? Allgemeine Java-Themen 10
J java-applikation-1.jar soll java-applikation-2 aufrufen.jar Allgemeine Java-Themen 5
C Reflektions, Benutzer soll Konstruktor auswählen und Parameter übergeben können Allgemeine Java-Themen 5
H Scanner soll einen Inputredirect einlesen, liest aber nicht jedes Wort ein. Allgemeine Java-Themen 3
S Threads ServerSocket-Thread soll schlafen, bis er gebraucht wird Allgemeine Java-Themen 2
T Welches Tuturial soll ich paralell lesen ? Allgemeine Java-Themen 3
G Jar-File soll eignen *.jar Namen ausgeben Allgemeine Java-Themen 10
D Dialog soll sich beim Klick auf Button schließen Allgemeine Java-Themen 8
L JAR verändern - JAVAC soll einfach nur kompilieren, ohne Prüfungen Allgemeine Java-Themen 16
C Abstrakte Klasse soll Methode aus Unterklasse aufrufen Allgemeine Java-Themen 3
D Input/Output Datei ausgewählt - Datei soll nicht existieren Allgemeine Java-Themen 5
S exec( "cmd /c") aber Konsole soll offen bleiben Allgemeine Java-Themen 9
L Entscheiden, welcher Code ausgeführt werden soll Allgemeine Java-Themen 7
I Swing Welche Swing Komponente soll ich nehmen? Allgemeine Java-Themen 2
R Programm soll warten bis eine Passwort eingabe gemacht wurde. Allgemeine Java-Themen 6
R FileChooser soll nur das File ausgeben Allgemeine Java-Themen 4
B Java soll Datei von Javascript empfangen Allgemeine Java-Themen 4
E Bitcode liegt vor und soll gespiegelt werden Allgemeine Java-Themen 4
B Scheduler soll bestimmten Job stoppen Allgemeine Java-Themen 4
H2SO3- jar soll eigenen namen(pfad) finden Allgemeine Java-Themen 12
J Main-Thread soll auf alleKinder Threads warten Allgemeine Java-Themen 5
B Thread soll anderen Thread beenden Allgemeine Java-Themen 5
R ANT Jar Task soll leere Verzeichnisse ignorieren..? Allgemeine Java-Themen 3
Developer_X JButton soll gar nichts machen Allgemeine Java-Themen 8
M Ein Array-Wert soll sich verändern, aber 2 tun es? Allgemeine Java-Themen 7
J Zweiter Prozess der alle x Sekunden etwas abfragen soll Allgemeine Java-Themen 2
G Was ist Ant und warum soll ich das brachen, wenn es IDEs gib Allgemeine Java-Themen 10
X Software soll einen Text vorlesen! Allgemeine Java-Themen 5
P Copiler soll nicht vorhandene Methoden ignorieren Allgemeine Java-Themen 2
G Apache soll mit SVN zusammenarbeiten Allgemeine Java-Themen 3
J double 3.0 soll ohne Nachkommastelle ausgegeben werden Allgemeine Java-Themen 12
B Programm soll auf die Eingabe vom Mouselistener warten. Allgemeine Java-Themen 19
S String soll Anführungszeichen enthalten. Allgemeine Java-Themen 2
M Methode soll warten, bis Button gedrückt Allgemeine Java-Themen 2
Y Methode soll 2 Werte zurückliefern Allgemeine Java-Themen 7
ARadauer programm soll sich selbst ändern können Allgemeine Java-Themen 20
F Klasse soll sich selbst returnieren mit entsprechendem Typ. Allgemeine Java-Themen 15
U Programm soll sich nach update neustarten Allgemeine Java-Themen 30
A NullPointerException, Thread soll Thread steuern Allgemeine Java-Themen 2
MQue HintergrundFarbe des Buttons beim drücken soll bleiben Allgemeine Java-Themen 2
A equals() macht nicht, was es soll Allgemeine Java-Themen 4
E Java-Programm soll Java-Programm "fernsteuern" -wi Allgemeine Java-Themen 3
Nils_Langner InputStream soll sich bei neuen Daten melden Allgemeine Java-Themen 2
Q Methode soll auf schließen eines Frames warten Allgemeine Java-Themen 4
S Log4J mit 2 Appender, einer soll nur INFO loggen Allgemeine Java-Themen 3
H Nur bis zur letzten Textzeile soll gelesen werden Allgemeine Java-Themen 4
G Was soll noch alles in Java kommen? Allgemeine Java-Themen 14
K Methode soll ein Array zurückgeben Allgemeine Java-Themen 4
M Ein Thread soll ein Textfeld (SWT) ändern Allgemeine Java-Themen 4
P Javaprogramm soll doppeltgeklickte Datei verarbeiten Allgemeine Java-Themen 22
B Thread soll auf Event warten, dann Daten an Klasse senden Allgemeine Java-Themen 2
R Thread soll auf MouseClick warten Allgemeine Java-Themen 2
I Verschlüsselung mit Pwd. - User soll Algorithmus wählen Allgemeine Java-Themen 4
S Java Programm soll im Hintergrund laufen (vgl. fork() bei C) Allgemeine Java-Themen 10
G To many Code? Was soll der scheiß? Allgemeine Java-Themen 11
T Soll ich meine Software als freeware zum download geben? Allgemeine Java-Themen 15
thE_29 Werden die SUN JVMs immer blöder oder was soll das. Allgemeine Java-Themen 11
T Klasse soll Object sein->um in JTabbedPane einzufügen Allgemeine Java-Themen 2
A Textfeld soll verschiedene Datumseingaben akzeptieren Allgemeine Java-Themen 5
1 Applet soll PDF von Servlet empfangen Allgemeine Java-Themen 3
H Wie stellt ein JTree fest, wo etwas eingehängt werden soll? Allgemeine Java-Themen 2
R EOFException was soll der ... Allgemeine Java-Themen 6
P Wieso benutzen PriorityQueues Heaps? Allgemeine Java-Themen 2
B Java mit command line und jars benutzen? Allgemeine Java-Themen 18
X Wie kann ich meine Stdlib in Intelliji benutzen? Allgemeine Java-Themen 3
M Wie kann ich ein int[] Array in einer Methode benutzen? Allgemeine Java-Themen 6
D Warum kann ich eine (deflaut) Klasse aus einer Libary in einem anderen Projekt benutzen? Allgemeine Java-Themen 3
dereki2000 Eigenen Zeichensatz benutzen Allgemeine Java-Themen 7
N Jsoup, Links weiter benutzen Allgemeine Java-Themen 5
I Java google Sandbox benutzen Allgemeine Java-Themen 1
Thallius PDF oder Word als Template benutzen Allgemeine Java-Themen 1
K CET-Zeit benutzen Allgemeine Java-Themen 6
B Klassen Eigene Klasse als Array benutzen Allgemeine Java-Themen 3
T .dll in java benutzen aber wie? Allgemeine Java-Themen 4
K Thread richtig benutzen Allgemeine Java-Themen 3
K Event benutzen Allgemeine Java-Themen 4
D Wann sollte ich statische Methoden und Variablen benutzen? Allgemeine Java-Themen 44
B Commandline jar mit Java benutzen Allgemeine Java-Themen 11
E Wie mit JNA C++ dll benutzen? Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben