Zum Inhalt springen

Konsole auf Textarea die zweite


Empfohlene Beiträge

Geschrieben

Hallo, ich habe immer noch probleme die Konsolenausgabe auf eine Textarea umzuleiten. Ich ahbe folgenden Quellcode:



public ConsoleTest() {

		frame = new JFrame("Console");


		JPanel consolePanel = new JPanel();

		consolePanel.setLayout(new BorderLayout());


		consoleTextArea = new JTextArea();

		consoleTextArea.setEditable(false);


		pane = new JScrollPane(consoleTextArea);

		consolePanel.add(pane, BorderLayout.CENTER);


		buttonPanel = new JPanel();

		FlowLayout jPanel1Layout = new FlowLayout();

		consolePanel.add(buttonPanel, BorderLayout.SOUTH);

		buttonPanel.setLayout(jPanel1Layout);


		openConsolButton = new JButton();

		buttonPanel.add(openConsolButton);

		openConsolButton.setText("Open console");

		openConsolButton.setActionCommand("open");

		openConsolButton.addActionListener(this);

		openConsolButton.setPreferredSize(new java.awt.Dimension(98, 21));


		closeButton = new JButton();

		buttonPanel.add(closeButton);

		closeButton.setText("Close");

		closeButton.setActionCommand("close");

		closeButton.addActionListener(this);

		closeButton.setPreferredSize(new java.awt.Dimension(98, 21));


		frame.getContentPane().add(consolePanel);


		frame.setSize(700, 900);

		frame.setVisible(true);

		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);


	}




		public void actionPerformed(ActionEvent evt) {

			String cmd = evt.getActionCommand();


			if (cmd.equals("close")) {

				int wahl = JOptionPane.showConfirmDialog(frame,

						"Do you really want to close?", "EXIT",

						JOptionPane.YES_NO_OPTION, JOptionPane.WARNING_MESSAGE);


				if (wahl == JOptionPane.YES_OPTION)

					frame.dispose();

			}


			if (cmd.equals("open")) {



				PrintStream p = new PrintStream(

						  new OutputStream() {

						    public void write( int b ) {

						      consoleTextArea.append( (char)b );

						    }

						  }

						);


				System.setErr(p);

				System.setOut(p);

			}

			}


		public static void main(String[] arg) throws IOException

	{

		new ConsoleTest(); // create console with not reference	

	}			




		}


Sollte eigentlich , denke ich?!, funktionieren?? Macht es aber leider nicht. Ich bekomme einen Fehlermeldung wenn ich die Sachen an den Textarea anhängen will.

 consoleTextArea.append( (char)b );


Er meckert über das append. Fehlermeldung. The method append (String)in the type JTextArea is not applicable for the argument (char).

Wie mache ich das denn richtig?

Vielen Dank

Stefan

Geschrieben

Indem Du Dir die Fehlermeldung durchliest, eine API Dokumentation zur Hand nimmst, und die Dokumentation der entsprechenden Methode liest.

Die Methode append der JTextArea erwartet als Parameter einen String, keinen char. Also sorg dafür, dass Du Deinen int-Wert in einen String bekommst (die Klasse String und deren Dokumentation helfen Dir hier weiter) und hänge den an die JTextArea.

Danach kannst Du Dir die API Dokumentation gleich noch bookmarken, die brauchst Du öfter.

Peter

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...