2012-04-20 14 views
6

Ich arbeite gerade an einem Spiel, das einen Scanner verwendet, um mit dem Benutzer zu interagieren. Das Spiel war zuerst textbasiert, also war die Java-Konsolenansicht das, was ich gespielt habe. Jetzt muss ich das Spiel in ein Gui oder Jframe umwandeln, also möchte ich in der Lage sein, die gleiche Konsolenfunktion innerhalb des Rahmens zu haben, während ich auch weiterhin den Scanner benutzen kann. Irgendwelche Ideen? Ich bin neu bei der Codierung, so dass jede Hilfe oder der gleiche Code sehr geschätzt wird! DankeHinzufügen einer Konsole zu einem Jframe

+2

Mein Ratschlag: nicht. Wenn Sie eine GUI verwenden, behindern Sie es nicht auf diese Weise. –

+1

Hallo @HovercraftFullOfEels! Können Sie vorschlagen, was stattdessen getan werden kann? Ich fand diese Frage sehr interessant. – TechSpellBound

+2

Ein Konsolenprogramm ist von Natur aus ein lineares Programm, das seine Fähigkeiten in hohem Maße einschränkt, während eine GUI ein ereignisgesteuertes Programm ist, dessen Verhalten nicht davon abhängt, wo in einer Zeile Sie sich befinden, sondern vom aktuellen Zustand des Programms die Eingabe des Benutzers. Wenn Sie eine GUI erstellen, binden Sie sie nicht an einen Scanner, sondern machen Sie sie grafisch und ereignisgesteuert. –

Antwort

2

Sie könnten eine GUI erstellen, die wie eine Konsole aussieht, wie durch eine JTextArea zum Anzeigen der Konsole Text und mit einem JTextField wo der Benutzer die Informationen eingeben können sie an die Konsole senden möchten. Wenn Sie KeyListener zu JTextField hinzufügen, können Sie darauf warten, dass der Benutzer die Eingabetaste drückt und die Informationen an die Konsole senden.

Anstatt Benutzereingaben von der Konsole zu lesen (die sitzt und darauf wartet, dass der Benutzer die Eingabe der Informationen beendet und dann eine Aktion ausführt), würden Sie einfach auf die 'Enter'-Taste warten und dann eine Methode aufrufen Ihr 'JTextField' Text.

Verwandte Themen